Skip to main content
Version: v5

@capacitor/browser

The Browser API provides the ability to open an in-app browser and subscribe to browser events.

On iOS, this uses SFSafariViewController and is compliant with leading OAuth service in-app-browser requirements.

Installโ€‹

npm install @capacitor/browser@latest-5
npx cap sync

Androidโ€‹

Variablesโ€‹

This plugin will use the following project variables (defined in your app's variables.gradle file):

  • androidxBrowserVersion: version of androidx.browser:browser (default: 1.5.0)

Exampleโ€‹

import { Browser } from '@capacitor/browser';

const openCapacitorSite = async () => {
await Browser.open({ url: 'http://capacitorjs.com/' });
};

APIโ€‹

open(...)โ€‹

open(options: OpenOptions) => Promise<void>

Open a page with the specified options.

ParamType
options
OpenOptions

Since: 1.0.0


close()โ€‹

close() => Promise<void>

Web & iOS only: Close an open browser window.

No-op on other platforms.

Since: 1.0.0


addListener('browserFinished', ...)โ€‹

addListener(eventName: 'browserFinished', listenerFunc: () => void) => Promise<PluginListenerHandle> & PluginListenerHandle

Android & iOS only: Listen for the browser finished event. It fires when the Browser is closed by the user.

ParamType
eventName'browserFinished'
listenerFunc() => void

Returns:

Promise<PluginListenerHandle> & PluginListenerHandle

Since: 1.0.0


addListener('browserPageLoaded', ...)โ€‹

addListener(eventName: 'browserPageLoaded', listenerFunc: () => void) => Promise<PluginListenerHandle> & PluginListenerHandle

Android & iOS only: Listen for the page loaded event. It's only fired when the URL passed to open method finish loading. It is not invoked for any subsequent page loads.

ParamType
eventName'browserPageLoaded'
listenerFunc() => void

Returns:

Promise<PluginListenerHandle> & PluginListenerHandle

Since: 1.0.0


removeAllListeners()โ€‹

removeAllListeners() => Promise<void>

Remove all native listeners for this plugin.

Since: 1.0.0


Interfacesโ€‹

OpenOptionsโ€‹

Represents the options passed to open.

PropTypeDescriptionSince
urlstringThe URL to which the browser is opened.1.0.0
windowNamestringWeb only: Optional target for browser open. Follows the target property for window.open. Defaults to _blank. Ignored on other platforms.1.0.0
toolbarColorstringA hex color to which the toolbar color is set.1.0.0
presentationStyle'fullscreen' | 'popover'iOS only: The presentation style of the browser. Defaults to fullscreen. Ignored on other platforms.1.0.0
widthnumberiOS only: The width the browser when using presentationStyle 'popover' on iPads. Ignored on other platforms.4.0.0
heightnumberiOS only: The height the browser when using presentationStyle 'popover' on iPads. Ignored on other platforms.4.0.0

PluginListenerHandleโ€‹

PropType
remove() => Promise<void>