diff options
Diffstat (limited to 'packages/DynamicSystemInstallationService/src')
2 files changed, 24 insertions, 0 deletions
diff --git a/packages/DynamicSystemInstallationService/src/com/android/dynandroid/BootCompletedReceiver.java b/packages/DynamicSystemInstallationService/src/com/android/dynandroid/BootCompletedReceiver.java index 38576ee47283..ea7b378eb607 100644 --- a/packages/DynamicSystemInstallationService/src/com/android/dynandroid/BootCompletedReceiver.java +++ b/packages/DynamicSystemInstallationService/src/com/android/dynandroid/BootCompletedReceiver.java @@ -19,8 +19,10 @@ package com.android.dynsystem; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; +import android.os.SystemProperties; import android.os.UserHandle; import android.os.image.DynamicSystemClient; +import android.util.FeatureFlagUtils; import android.util.Log; @@ -35,6 +37,10 @@ public class BootCompletedReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { + if (!featureFlagEnabled()) { + return; + } + String action = intent.getAction(); Log.d(TAG, "Broadcast received: " + action); @@ -47,4 +53,9 @@ public class BootCompletedReceiver extends BroadcastReceiver { context.startServiceAsUser(startServiceIntent, UserHandle.SYSTEM); } } + + private boolean featureFlagEnabled() { + return SystemProperties.getBoolean( + FeatureFlagUtils.PERSIST_PREFIX + FeatureFlagUtils.DYNAMIC_SYSTEM, false); + } } diff --git a/packages/DynamicSystemInstallationService/src/com/android/dynandroid/VerificationActivity.java b/packages/DynamicSystemInstallationService/src/com/android/dynandroid/VerificationActivity.java index 269645d8016b..b1c09381823b 100644 --- a/packages/DynamicSystemInstallationService/src/com/android/dynandroid/VerificationActivity.java +++ b/packages/DynamicSystemInstallationService/src/com/android/dynandroid/VerificationActivity.java @@ -25,8 +25,10 @@ import android.content.Context; import android.content.Intent; import android.net.Uri; import android.os.Bundle; +import android.os.SystemProperties; import android.os.UserHandle; import android.os.image.DynamicSystemClient; +import android.util.FeatureFlagUtils; import android.util.Log; @@ -49,6 +51,12 @@ public class VerificationActivity extends Activity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); + if (!featureFlagEnabled()) { + Log.w(TAG, FeatureFlagUtils.DYNAMIC_SYSTEM + " not enabled; activity aborted."); + finish(); + return; + } + KeyguardManager km = (KeyguardManager) getSystemService(Context.KEYGUARD_SERVICE); if (km != null) { @@ -98,6 +106,11 @@ public class VerificationActivity extends Activity { startServiceAsUser(intent, UserHandle.SYSTEM); } + private boolean featureFlagEnabled() { + return SystemProperties.getBoolean( + FeatureFlagUtils.PERSIST_PREFIX + FeatureFlagUtils.DYNAMIC_SYSTEM, false); + } + static boolean isVerified(String url) { return sVerifiedUrl != null && sVerifiedUrl.equals(url); } |