diff options
Diffstat (limited to 'src/com/android/certinstaller/CredentialHelper.java')
-rw-r--r-- | src/com/android/certinstaller/CredentialHelper.java | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/src/com/android/certinstaller/CredentialHelper.java b/src/com/android/certinstaller/CredentialHelper.java index c131268..a3e2e27 100644 --- a/src/com/android/certinstaller/CredentialHelper.java +++ b/src/com/android/certinstaller/CredentialHelper.java @@ -18,6 +18,7 @@ package com.android.certinstaller; import android.content.Context; import android.content.Intent; +import android.content.pm.PackageManager; import android.os.Bundle; import android.os.RemoteException; import android.security.Credentials; @@ -256,11 +257,16 @@ class CredentialHelper { return mUid != -1; } - Intent createSystemInstallIntent() { + Intent createSystemInstallIntent(final Context context) { Intent intent = new Intent("com.android.credentials.INSTALL"); // To prevent the private key from being sniffed, we explicitly spell // out the intent receiver class. - intent.setClassName("com.android.settings", "com.android.settings.CredentialStorage"); + if (!isWear(context)) { + intent.setClassName("com.android.settings", "com.android.settings.CredentialStorage"); + } else { + intent.setClassName("com.google.android.apps.wearable.settings", + "com.google.android.clockwork.settings.CredentialStorage"); + } intent.putExtra(Credentials.EXTRA_INSTALL_AS_UID, mUid); try { if (mUserKey != null) { @@ -365,4 +371,8 @@ class CredentialHelper { return true; } + + private static boolean isWear(final Context context) { + return context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_WATCH); + } } |