Description
I'm not sure that Install Time Permissions Prompt could really solve the problem of compulsive denial of permission prompts described in the explainer.
I truly believe that web apps should ask for user permission in context (rather than on page load or install time), then the purpose of the request should be obvious. Lack of understanding of purpose will still lead to denial of permission prompts.
This is where Permission Request Purpose Strings could help.
IMO, quite the opposite, restricting some Web APIs like e.g. Web USB to only installed PWA looks a promising idea. Why would a regular web page on the Internet can ask you permission for such powerful API?
I'm sure the true root of the problem is that permission managing currently is hard and not intuitive for users (please read https://crbug.com/974785 from the beginning to the end).
This concern is amplified by the fact that on the web permissions are persistent.
This is where One-time Permissions could help.
If the permission managing UX is improved (see my proposals in https://crbug.com/974785), then the compulsive denial of permission prompts will no longer be a problem. Users will be able to easily change permissions: easily grant (turn on) the permission if they dismissed (turned off) it once before, and, more importantly (because it's a bigger user privacy issue), easily dismiss (turn off) the permission if they granted (turned on) it once before.
The idea of declaring permissions in the manifest isn't new. See #395, #319, #218, #75, #62, #52, #31, #8 in the https://github.com/w3c/manifest. So @marcoscaceres wrote an interesting "Why manifests and permissions don’t mix" blog post.
Just curious why you believe this idea will be accepted this time?
See also W3C Privacy CG report on Permissions and User Consent. This is a great source of various ideas and concerns.
@b1tr0t @marcoscaceres Thoughts?