summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMatt Mower <mowerm@gmail.com>2015-12-21 10:55:35 -0600
committercretin45 <cretin45@gmail.com>2015-12-21 14:07:11 -0800
commit7ab7f3c6d9927a9c833bfe3bd5c6d6819dbedb6d (patch)
treeb030b1609bfa324427cdc526378e6cbc453f248d /src
parent68d2ba7728bbdaa2ce3b2316777afca5e11d902f (diff)
downloadpackages_apps_SetupWizard-7ab7f3c6d9927a9c833bfe3bd5c6d6819dbedb6d.zip
packages_apps_SetupWizard-7ab7f3c6d9927a9c833bfe3bd5c6d6819dbedb6d.tar.gz
packages_apps_SetupWizard-7ab7f3c6d9927a9c833bfe3bd5c6d6819dbedb6d.tar.bz2
SetupWizard: Conditionally run account setup
If the package defined by cm_account_type (which can be overlayed) exists, then add CyanogenSettingsPage. Otherwise, omit. PS3: On the cyngn side, the account type and package name don't match. Added a new string to overlay. Change-Id: I15e032e21281aaf51ca32ac9cc0861e033201f19
Diffstat (limited to 'src')
-rw-r--r--src/com/cyanogenmod/setupwizard/setup/CMSetupWizardData.java5
-rw-r--r--src/com/cyanogenmod/setupwizard/util/SetupWizardUtils.java10
2 files changed, 14 insertions, 1 deletions
diff --git a/src/com/cyanogenmod/setupwizard/setup/CMSetupWizardData.java b/src/com/cyanogenmod/setupwizard/setup/CMSetupWizardData.java
index 79e2469..fa32537 100644
--- a/src/com/cyanogenmod/setupwizard/setup/CMSetupWizardData.java
+++ b/src/com/cyanogenmod/setupwizard/setup/CMSetupWizardData.java
@@ -26,6 +26,7 @@ import android.telephony.TelephonyManager;
import android.util.Log;
import com.android.internal.telephony.TelephonyIntents;
+import com.cyanogenmod.setupwizard.R;
import com.cyanogenmod.setupwizard.util.SetupWizardUtils;
import java.util.ArrayList;
@@ -66,7 +67,9 @@ public class CMSetupWizardData extends AbstractSetupData {
if (SetupWizardUtils.hasGMS(mContext)) {
pages.add(new GmsAccountPage(mContext, this).setHidden(true));
}
- if (!SetupWizardUtils.hasLeanback(mContext)) {
+ if (!SetupWizardUtils.hasLeanback(mContext) &&
+ SetupWizardUtils.isPackageInstalled(mContext,
+ mContext.getString(R.string.cm_account_package_name))) {
pages.add(new CyanogenServicesPage(mContext, this).setHidden(true));
}
if (SetupWizardUtils.hasFingerprint(mContext) && SetupWizardUtils.isOwner()) {
diff --git a/src/com/cyanogenmod/setupwizard/util/SetupWizardUtils.java b/src/com/cyanogenmod/setupwizard/util/SetupWizardUtils.java
index e7411ae..4918b11 100644
--- a/src/com/cyanogenmod/setupwizard/util/SetupWizardUtils.java
+++ b/src/com/cyanogenmod/setupwizard/util/SetupWizardUtils.java
@@ -199,6 +199,16 @@ public class SetupWizardUtils {
return AccountManager.get(context).getAccountsByType(accountType).length > 0;
}
+ public static boolean isPackageInstalled(Context context, String packageName) {
+ PackageManager pm = context.getPackageManager();
+ try {
+ pm.getPackageInfo(packageName, PackageManager.GET_ACTIVITIES);
+ return true;
+ } catch (PackageManager.NameNotFoundException e) {
+ return false;
+ }
+ }
+
public static void disableSetupWizard(Context context) {
disableComponent(context, context.getPackageName(),
"com.cyanogenmod.setupwizard.ui.SetupWizardActivity");