diff --git a/res/values/strings.xml b/res/values/strings.xml
index ea58ded89..c1c85531f 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -183,7 +183,7 @@
Permissions for version %s
Show permissions
Display a list of permissions an app needs
- You don\'t have any app installed that can handle %s
+ You don\'t have any available app that can handle %s
Compact Layout
Only show app names and summaries in list
diff --git a/src/org/fdroid/fdroid/AppDetails.java b/src/org/fdroid/fdroid/AppDetails.java
index 9a7a27d56..b8e4b780a 100644
--- a/src/org/fdroid/fdroid/AppDetails.java
+++ b/src/org/fdroid/fdroid/AppDetails.java
@@ -634,14 +634,15 @@ public class AppDetails extends ListActivity {
return true;
}
+
public void tryOpenUri(String s) {
- try {
- startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(s)));
- } catch (android.content.ActivityNotFoundException e) {
- Toast toast = Toast.makeText(this,
- getString(R.string.no_handler_app, s), Toast.LENGTH_LONG);
- toast.show();
- }
+ Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(s));
+ if (intent.resolveActivity(getPackageManager()) != null)
+ startActivity(intent);
+ else
+ Toast.makeText(this,
+ getString(R.string.no_handler_app, intent.getDataString()),
+ Toast.LENGTH_LONG).show();
}
@Override