diff options
author | Adnan Begovic <adnan@cyngn.com> | 2015-11-18 16:06:36 -0800 |
---|---|---|
committer | Adnan Begovic <adnan@cyngn.com> | 2015-11-20 15:28:10 -0800 |
commit | 2be0eef4dda0548de9ce68c50f1edd7ff0457dff (patch) | |
tree | 8d0e41508d038391dce3fd5f67dd728a9ab17ff2 /packages | |
parent | e4558b7fc3326edabbb9fb2f43c329626f48e4d2 (diff) | |
download | vendor_cmsdk-2be0eef4dda0548de9ce68c50f1edd7ff0457dff.tar.gz vendor_cmsdk-2be0eef4dda0548de9ce68c50f1edd7ff0457dff.tar.bz2 vendor_cmsdk-2be0eef4dda0548de9ce68c50f1edd7ff0457dff.zip |
CMSettingsProvider: Change migration pref.
The previous migration step should've never happened,
change the default shared pref to a different location to
force trigger a migration on devices where the previous iteration
of settings migration already happened.
Change-Id: I6b466d37910c31dbf58d37fd631807d7dd2dbae3
Diffstat (limited to 'packages')
-rw-r--r-- | packages/CMSettingsProvider/src/org/cyanogenmod/cmsettings/CMSettingsProvider.java | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/packages/CMSettingsProvider/src/org/cyanogenmod/cmsettings/CMSettingsProvider.java b/packages/CMSettingsProvider/src/org/cyanogenmod/cmsettings/CMSettingsProvider.java index cdd4291..4da7d6c 100644 --- a/packages/CMSettingsProvider/src/org/cyanogenmod/cmsettings/CMSettingsProvider.java +++ b/packages/CMSettingsProvider/src/org/cyanogenmod/cmsettings/CMSettingsProvider.java @@ -18,6 +18,7 @@ package org.cyanogenmod.cmsettings; import android.app.ActivityManager; import android.content.BroadcastReceiver; +import android.content.ComponentName; import android.content.ContentProvider; import android.content.ContentResolver; import android.content.ContentValues; @@ -54,12 +55,12 @@ import java.util.Set; * The CMSettingsProvider serves as a {@link ContentProvider} for CM specific settings */ public class CMSettingsProvider extends ContentProvider { - private static final String TAG = "CMSettingsProvider"; + static final String TAG = "CMSettingsProvider"; private static final boolean LOCAL_LOGV = false; private static final boolean USER_CHECK_THROWS = true; - private static final String PREF_HAS_MIGRATED_CM_SETTINGS = "has_migrated_cm_settings"; + static final String PREF_HAS_MIGRATED_CM_SETTINGS = "has_migrated_cm13_settings"; private static final Bundle NULL_SETTING = Bundle.forPair("value", null); @@ -249,7 +250,7 @@ public class CMSettingsProvider extends ContentProvider { @Override public Bundle call(String method, String request, Bundle args) { - if (LOCAL_LOGV) Log.d(TAG, "Call method: " + method); + if (LOCAL_LOGV) Log.d(TAG, "Call method: " + method + " " + request); int callingUserId = UserHandle.getCallingUserId(); if (args != null) { @@ -262,6 +263,19 @@ public class CMSettingsProvider extends ContentProvider { } } + boolean hasMigratedCMSettings = mSharedPrefs.getBoolean(PREF_HAS_MIGRATED_CM_SETTINGS, + false); + if (!hasMigratedCMSettings) { + if (LOCAL_LOGV) { + Log.d(TAG, "Reenabling component preboot receiver"); + } + getContext().getPackageManager().setComponentEnabledSetting( + new ComponentName("org.cyanogenmod.cmsettings", + "org.cyanogenmod.cmsettings.PreBootReceiver"), + PackageManager.COMPONENT_ENABLED_STATE_ENABLED, + PackageManager.DONT_KILL_APP); + } + // Migrate methods if (CMSettings.CALL_METHOD_MIGRATE_SETTINGS.equals(method)) { migrateCMSettingsForExistingUsersIfNeeded(); |