Web/API/BeforeInstallPromptEvent

From Get docs

The BeforeInstallPromptEvent is fired at the Window.onbeforeinstallprompt handler before a user is prompted to "install" a web site to a home screen on mobile.

This interface inherits from the Event interface.

Constructor

BeforeInstallPromptEvent()
Creates a new BeforeInstallPromptEvent.

Properties

Inherits properties from its parent, Event.

BeforeInstallPromptEvent.platforms Read only
Returns an array of DOMString items containing the platforms on which the event was dispatched. This is provided for user agents that want to present a choice of versions to the user such as, for example, "web" or "play" which would allow the user to chose between a web version or an Android version.
BeforeInstallPromptEvent.userChoice Read only
Returns a Promise that resolves to a DOMString containing either "accepted" or "dismissed".

Methods

BeforeInstallPromptEvent.prompt() 
Allows a developer to show the install prompt at a time of their own choosing. This method returns a  Promise.

Example

window.addEventListener("beforeinstallprompt", function(e) { 
  // log the platforms provided as options in an install prompt 
  console.log(e.platforms); // e.g., ["web", "android", "windows"] 
  e.userChoice.then(function(choiceResult) { 
    console.log(choiceResult.outcome); // either "accepted" or "dismissed"
  }, handleError); 
});

Browser compatibility

Update compatibility data on GitHub

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari Android webview Chrome for Android Firefox for Android Opera for Android Safari on iOS Samsung Internet

BeforeInstallPromptEvent

Experimental'Non-standard'

Chrome

Full support 45

Edge

Full support ≤79

Firefox

No support No

IE

No support No

Opera

No support No

Safari

No support No

WebView Android

Full support 45

Chrome Android

Full support 45

Firefox Android

No support No

Opera Android

No support No

Safari iOS

No support No

Samsung Internet Android

Full support 5.0

BeforeInstallPromptEvent() constructor

Experimental'Non-standard'

Chrome

Full support 45

Edge

Full support ≤79

Firefox

No support No

IE

No support No

Opera

No support No

Safari

No support No

WebView Android

Full support 45

Chrome Android

Full support 45

Firefox Android

No support No

Opera Android

No support No

Safari iOS

No support No

Samsung Internet Android

Full support 5.0

platforms

Experimental'Non-standard'

Chrome

Full support 45

Edge

Full support ≤79

Firefox

No support No

IE

No support No

Opera

No support No

Safari

No support No

WebView Android

Full support 45

Chrome Android

Full support 45

Firefox Android

No support No

Opera Android

No support No

Safari iOS

No support No

Samsung Internet Android

Full support 5.0

prompt

Experimental'Non-standard'

Chrome

Full support 45

Edge

Full support ≤79

Firefox

No support No

IE

No support No

Opera

No support No

Safari

No support No

WebView Android

Full support 45

Chrome Android

Full support 45

Firefox Android

No support No

Opera Android

No support No

Safari iOS

No support No

Samsung Internet Android

Full support 5.0

userChoice

Experimental'Non-standard'

Chrome

Full support 45

Edge

Full support ≤79

Firefox

No support No

IE

No support No

Opera

No support No

Safari

No support No

WebView Android

Full support 45

Chrome Android

Full support 45

Firefox Android

No support No

Opera Android

No support No

Safari iOS

No support No

Samsung Internet Android

Full support 5.0

Legend

Full support  
Full support
No support  
No support
Experimental. Expect behavior to change in the future.'
Experimental. Expect behavior to change in the future.
Non-standard. Expect poor cross-browser support.'
Non-standard. Expect poor cross-browser support.