diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 261ba4ae3..0ddb01cfa 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -39,6 +39,18 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/src/org/fdroid/fdroid/FDroid.java b/src/org/fdroid/fdroid/FDroid.java
index 4dc1deee4..1476719b9 100644
--- a/src/org/fdroid/fdroid/FDroid.java
+++ b/src/org/fdroid/fdroid/FDroid.java
@@ -83,7 +83,17 @@ public class FDroid extends FragmentActivity {
setDefaultKeyMode(DEFAULT_KEYS_SEARCH_LOCAL);
Intent i = getIntent();
- if (i.hasExtra("uri")) {
+ Uri data = getIntent().getData();
+ if (data != null) {
+ String appid = data.getQueryParameter("fdid");
+ // If appid == null, we just browse all the apps.
+ // If appid != null, we browse the app specified.
+ if (appid != null) {
+ Intent call = new Intent(this, AppDetails.class);
+ call.putExtra("appid", appid);
+ startActivityForResult(call, REQUEST_APPDETAILS);
+ }
+ } else if (i.hasExtra("uri")) {
Intent call = new Intent(this, ManageRepo.class);
call.putExtra("uri", i.getStringExtra("uri"));
startActivityForResult(call, REQUEST_MANAGEREPOS);