CarrierAppUtils: uninstall prebuild carrier app at most once
Pixels (and other OEM products) have feature to integrate
preloaded carrier apps (e.g. Tycho for Google Fi).
The carrier app will be uninstalled/hidden firstly if it does
not get the carrir privileges. When user insert SIM for the
carrier, the carrier app will be shown again, saving the user
effort/cost to download the carrier app from play store.
The issue scenario here is that after user has upgraded the
carrier app (e.g. through PlayStore) and then OTA upgrading a
new android release which integrated a new verion of carrier app,
the hiding logic is triggered again, causing the tycho
apk upgrading to the new prebuild version but with
the previous activation data cleared.
The CL makes sure the uninstalling logic is only triggered
at most once. This means, on OTA upgrading to newer
carrier app, the newer carrier app does get installed
but the hiding logic will not trigger and previous
activation data is kept.
Bug: 158028151
Test: atest CarrierAppUtilsTest
Test: Regression test (go/hide_carrier_app_test_plan)
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:38a4f7e32bb2ba608ceb2df0d33413bd4d060ed9)
Merged-In: I59ef6170484e08b4558a8918d02bbb801005f175
Change-Id: I59ef6170484e08b4558a8918d02bbb801005f175
1 file changed