4

To uninstall a webapp, Mozilla says to go to about:apps. Therefore, I asked about anchor link to Firefox about:config. But it seems impossible to go to about:config (or about:apps) from a web page.

Then, Joum advised to use navigator.mozApps.mgmg.uninstall() as indicated by Mathieu Rochette.

But how to use navigator.mozApps.mgmg.uninstall() within a web page?
What are the other ways to uninstall a webapp on Firefox?

Community
  • 1
  • 1
oHo
  • 51,447
  • 27
  • 165
  • 200
  • After thinking about this for a while, there shouldn't be a straightforward way to do this. Think about this: a link to `about:config` wouldn't be interpreted in the same way by all browsers - so in a webapp it can't be a solution because you want it to be cross-browser compatible. More, the method my Mathieu Rochette specifficaly targets local installs (_HTML5 offline app_ as he stated). Does your app fall in that category? – Joum Jul 03 '13 at 07:35
  • Yes @Joum, my webapp is in that category. You can see my source code at http://www.lmap.org/index_v3.html. I have tried the `unistall()` but while debugging on Firebug I saw this function was not (yet?) implemented on Firefox v22 (release) and v23 (beta). I will try later on Aurora (Firefox v24). Have fun. Cheers ;-) – oHo Jul 04 '13 at 21:24

2 Answers2

9

I'm running Firefox on Linux, I'd like to share my solution but it might not work on Windows or other platforms.

Firefox creates a .directory for each web app in your home, for example:

~/.http\;robnyman.github.com

You can run

~/.http\;robnyman.github.com/webapprt-stub -remove

to remove that app. And you will get a notification that the app is uninstalled.

Ning Sun
  • 2,145
  • 1
  • 19
  • 24
2

To manually uninstall a webapp on Firefox for Android, you can go to about:apps.

Unfortunately, about:apps is not yet available on Firefox for Desktop.

Using Aurora (Firefox v24) and Firebug, I retrieved the latest API of navigator.mozApps:

navigator.mozApps [xpconnect wrapped mozIDOMApplicationRegistry]
|
+-- QueryInterface()
|
+-- checkInstalled()
|
+-- getInstalled()
|
+-- getSelf()
|
+-- install()
|
+-- __proto__ [xpconnect wrapped native prototype] 
    |
    +-- QueryInterface()
    |
    +-- checkInstalled()
    |
    +-- getInstalled()
    |
    +-- getSelf()
    |
    +-- install()

Therefore, there is no uninstall() function...

In fact, the main issue is to avoid a webapp to uninstall another webapp (i.e. a website uninstalling webapps from another website). I think this is something Mozilla is working on... let's see on further versions...

oHo
  • 51,447
  • 27
  • 165
  • 200