Save config to disk to avoid binding.

In order to avoid binding to a carrier app during boot, save the config
returned from carrier apps* in files. If a saved config is available, it
will be used instead of binding to the app.

Files will be written per ICCID per package, so that switching between
SIMs or SIM profiles can also avoid binding.

The package version of the carrier app will be written into the file,
so that we don't try to load a config that came from an old app version.

The files for a specific package should be deleted if that package is
installed, uninstalled, or updated. They also will be deleted if the
carrier app calls CarrierConfigManager.reloadCarrierConfigForSubId().

* This applies to the default app as well.

Note: This used to be change I4f64374bfba80d4ba690ea6d92be5fb2584fd96b

Bug: 20268926
Change-Id: I221649acb914a74859cbf25309e95034aef30420
1 file changed