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
This commit is contained in:
parent
e4558b7fc3
commit
2be0eef4dd
@ -18,6 +18,7 @@ package org.cyanogenmod.cmsettings;
|
|||||||
|
|
||||||
import android.app.ActivityManager;
|
import android.app.ActivityManager;
|
||||||
import android.content.BroadcastReceiver;
|
import android.content.BroadcastReceiver;
|
||||||
|
import android.content.ComponentName;
|
||||||
import android.content.ContentProvider;
|
import android.content.ContentProvider;
|
||||||
import android.content.ContentResolver;
|
import android.content.ContentResolver;
|
||||||
import android.content.ContentValues;
|
import android.content.ContentValues;
|
||||||
@ -54,12 +55,12 @@ import java.util.Set;
|
|||||||
* The CMSettingsProvider serves as a {@link ContentProvider} for CM specific settings
|
* The CMSettingsProvider serves as a {@link ContentProvider} for CM specific settings
|
||||||
*/
|
*/
|
||||||
public class CMSettingsProvider extends ContentProvider {
|
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 LOCAL_LOGV = false;
|
||||||
|
|
||||||
private static final boolean USER_CHECK_THROWS = true;
|
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);
|
private static final Bundle NULL_SETTING = Bundle.forPair("value", null);
|
||||||
|
|
||||||
@ -249,7 +250,7 @@ public class CMSettingsProvider extends ContentProvider {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Bundle call(String method, String request, Bundle args) {
|
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();
|
int callingUserId = UserHandle.getCallingUserId();
|
||||||
if (args != null) {
|
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
|
// Migrate methods
|
||||||
if (CMSettings.CALL_METHOD_MIGRATE_SETTINGS.equals(method)) {
|
if (CMSettings.CALL_METHOD_MIGRATE_SETTINGS.equals(method)) {
|
||||||
migrateCMSettingsForExistingUsersIfNeeded();
|
migrateCMSettingsForExistingUsersIfNeeded();
|
||||||
|
Loading…
Reference in New Issue
Block a user