am d7db6baa: Merge "Don\'t direct to market if no markets installed"
* commit 'd7db6baac7e7d6742916cf1f80e9cbf832b1c64d':
Don't direct to market if no markets installed
diff --git a/src/com/android/settings/AccessibilitySettings.java b/src/com/android/settings/AccessibilitySettings.java
index dc29ea9..8cb04cc 100644
--- a/src/com/android/settings/AccessibilitySettings.java
+++ b/src/com/android/settings/AccessibilitySettings.java
@@ -179,9 +179,9 @@
super.onResume();
loadInstalledServices();
updateAllPreferences();
- if (mServicesCategory.getPreference(0) == mNoServicesMessagePreference) {
- offerInstallAccessibilitySerivceOnce();
- }
+
+ offerInstallAccessibilitySerivceOnce();
+
mSettingsPackageMonitor.register(getActivity(), getActivity().getMainLooper(), false);
RotationPolicy.registerRotationPolicyListener(getActivity(),
mRotationPolicyListener);
@@ -465,6 +465,17 @@
final boolean offerInstallService = !preferences.getBoolean(
KEY_INSTALL_ACCESSIBILITY_SERVICE_OFFERED_ONCE, false);
if (offerInstallService) {
+ String screenreaderMarketLink = SystemProperties.get(
+ SYSTEM_PROPERTY_MARKET_URL,
+ DEFAULT_SCREENREADER_MARKET_LINK);
+ Uri marketUri = Uri.parse(screenreaderMarketLink);
+ Intent marketIntent = new Intent(Intent.ACTION_VIEW, marketUri);
+
+ if (getPackageManager().resolveActivity(marketIntent, 0) == null) {
+ // Don't show the dialog if no market app is found/installed.
+ return;
+ }
+
preferences.edit().putBoolean(KEY_INSTALL_ACCESSIBILITY_SERVICE_OFFERED_ONCE,
true).commit();
// Notify user that they do not have any accessibility