IPvFoo doesn't work

IPvFoo is my extension. It works fine on desktop Chrome and Firefox, but it’s broken on Firefox Nightly for Android:

The first problem is that the [Click to grant permission] button doesn’t do anything. Here is the relevant API call from https://github.com/pmarks-net/ipvfoo/blob/master/src/popup.js :

const ALL_URLS = "<all_urls>";
...
chrome.permissions.request({origins: [ALL_URLS]});

I’m willing to try things if anyone has ideas, but it seems like it should be Firefox’s responsibility to make desktop MV3 extensions run unmodified.

1 Like

Hey @pmarks!

I did a bit of testing on my end and it appears that permissions.request() calls are not prompting the end user on Fenix Nightly 120.0a1. Someone has already opened 1850221 to track this bug. I’ll see what else I can find out about this bug.

Simeon (dotproto)
Firefox WebExtensions DevRel

1 Like

On Desktop Firefox, IPvFoo > Manage Extension > Permissions shows:

  • Required permissions for core functionality:
    • Access browser activity during navigation
  • Optional permissions for added functionality:
    • Access your data for all websites [toggle]

On Android Firefox, Add-ons > IPvFoo > Permissions only shows:

  • Access browser activity during navigation

I don’t think this problem is limited to the permissions.request() prompt, because I can’t seem to enable the permission manually either.

1 Like

Oh, that’s a good point point. You’re right, optional permissions aren’t appearing on Android. Thanks for calling this out!

I almost forgot to follow up on this comment. At the moment Firefox for Android is only targeting MV2 extensions with event pages. Longer term, though, I agree that Firefox should aim to minimize API differences between Android and desktop and support MV3.

I installed the apk from https://github.com/mozilla-mobile/firefox-android/pull/3917, and it actually works!

The extension’s custom [Click to grant permission] button responds now, but “Access your data for all websites” still does not appear in the Permissions UI, so there is no obvious way to revoke it once granted.

1 Like

Thanks for calling out that UX gap. I’ll look into it.

Firefox updated to version 120 on my Android device, but I’m unable to search for ipvfoo. It worked on 120 Nightly, and still works on 122 Nightly.

Any idea what the problem is?