Created attachment 743173 [details] Launching an Uninstalled Packaged App Result OS: Android 4.2 Device: Galaxy Nexus STR: 1. Install a packaged app 2. Uninstall it from about:apps Expected: The android shortcut should be removed upon uninstalling the app. Actual: The shortcut is left behind. If you try to launch the packaged app shortcut, a text-based app manifest is printed to the screen.
Can't be done. Android does not give the App any opportunity to clean up.
(In reply to Mark Finkle (:mfinkle) from comment #1) > Can't be done. Android does not give the App any opportunity to clean up. Removing priority for discussion. Okay. If we can't remove the shortcut, then can we put up an error page if a user tries to launch a non-existent packaged app saying the app no longer exists?
(I thought you could remove shortcuts via http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android-apps/4.2_r1/com/android/launcher2/UninstallShortcutReceiver.java?av=f; in an intent with com.android.launcher.action.UNINSTALL_SHORTCUT)
(In reply to Aaron Train [:aaronmt] from comment #3) > (I thought you could remove shortcuts via > http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/ > android-apps/4.2_r1/com/android/launcher2/UninstallShortcutReceiver. > java?av=f; in an intent with com.android.launcher.action.UNINSTALL_SHORTCUT) Indeed. Jason and I talked. I discovered my mistake here: I thought he was referring to uninstalling Firefox, instead of just the app. Turns out, we do try to UNINSTALL_SHORTCUT: http://mxr.mozilla.org/mozilla-central/source/mobile/android/base/GeckoAppShell.java#676 But some versions of Android ignore that. Another problem is: The Intent must be exactly the same as the one on the homescreen. This means there could be issues if we change the way we build web app Intents (see getWebAppIntent). For a given build of Firefox, installing an app and uninstalling an app _should_ remove the shortcut if Android is not ignoring the Intent. Wes - Any other ideas?
This should no longer be an issue now that we're using Synthetic APKs.