How to get "Additional Permissions Requested" header with iOS Safari extension?

Other iOS Safari extension show an "Additional Permissions Requested" header with a Review button on pages that require extension access. On my own extension this is not showing. Content scripts aren't injected until a user finds the extension in the toolbar opened from the browser address bar, and gives permission there. How can I get this permission dialog to show for my own extension on pages where I want to inject content scripts?

Post not yet marked as solved Up vote post of bramiam Down vote post of bramiam
1.6k views
  • I also would like to know how to trigger this prompt. I had installed Grammarly and right after that, it prompted me to grant permissions to 600+ hosts... How can I trigger a similar permissions "bar"?

Add a Comment

Replies

Update:

@bramiam Not sure, but have you tried with a real device? In the simulator, my extension doesn't ask about additional permissions, but I tried it on the real device and it requested permissions...

From my manifest:

"content_scripts": [{
    "run_at": "document_idle",
    "all_frames": true,
    "match_about_blank": true,
    "js": [ "***.js" ],
    "css": [ "***.css" ],
    "matches": [ "<all_urls>" ]
  },{
    "js": [ "***.js" ],
    "matches": [ "<all_urls>" ]
}],

"permissions": [
    "tabs",
    "cookies",
    "storage",
    "https://xxxxxxx.com",
    "http://*/*",
    "https://*/*"
],

Did anyone find a way to consistently trigger this prompt on websites with no permissions?

I’ve searched through tons of safari extensions in the AppStore and only found a few extensions that trigger this:

  • Honey
  • Grammarly
  • RetailMeNot
  • CardPointers

It seems like it is not documented at all here: https://developer.apple.com/documentation/safariservices/safari_web_extensions/managing_safari_web_extension_permissions