This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The permissionState()
method of the PushManager
interface returns a Promise
that resolves to a DOMString
indicating the permission state of the push manager. Possible values are 'prompt'
, 'denied'
, or 'granted'
.
Note: As of Firefox 44, the permissions for Notifications and Push have been merged. If permission is granted for notifications, push will also be enabled.
PushManager.permissionState(options).then(function(PushMessagingState) { ... });
options Optional
userVisibleOnly
: A boolean indicating that the returned push subscription will only be used for messages whose effect is made visible to the user.applicationServerKey
: A public key your push server will use to send messages to client apps via a push server. This value is part of a signing key pair generated by your application server and usable with elliptic curve digital signature (ECDSA) over the P-256 curve. A Promise
that resolves to a DOMString
with a value of 'prompt'
, 'denied'
, or 'granted'
.
Specification | Status | Comment |
---|---|---|
Push API The definition of 'permissionState()' in that specification. | Working Draft | Initial definition. |
Desktop | ||||||
---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | |
Basic support | 42 | 16
|
44
|
No | 29 | No |
Mobile | |||||||
---|---|---|---|---|---|---|---|
Android webview | Chrome for Android | Edge Mobile | Firefox for Android | Opera for Android | iOS Safari | Samsung Internet | |
Basic support | No | 42 | Yes | 48
|
29 | No | 4.0 |
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/PushManager/permissionState