npm install @capgo/inappbrowser
npx cap sync
import { InAppBrowser } from '@capgo/inappbrowser'
InAppBrowser.open({ url: "YOUR_URL" });
if you need the Camera to work in Android, you need to add the following to your AndroidManifest.xml
file:
<uses-permission android:name="android.permission.CAMERA" />
Then the permission will be asked when the camera is used.
open(options: OpenOptions) => Promise<any>
Open url in a new window fullscreen
Param | Type |
---|---|
options |
OpenOptions |
Returns: Promise<any>
Since: 0.1.0
clearCookies() => Promise<any>
Clear all cookies
Returns: Promise<any>
Since: 0.5.0
close() => Promise<any>
Returns: Promise<any>
openWebView(options: OpenWebViewOptions) => Promise<any>
Open url in a new webview with toolbars
Param | Type |
---|---|
options |
OpenWebViewOptions |
Returns: Promise<any>
Since: 0.1.0
setUrl(options: { url: string; }) => Promise<any>
Param | Type |
---|---|
options |
{ url: string; } |
Returns: Promise<any>
addListener(eventName: "urlChangeEvent", listenerFunc: UrlChangeListener) => Promise<PluginListenerHandle> & PluginListenerHandle
Listen for url change, only for openWebView
Param | Type |
---|---|
eventName |
'urlChangeEvent' |
listenerFunc |
UrlChangeListener |
Returns: Promise<PluginListenerHandle> & PluginListenerHandle
Since: 0.0.1
addListener(eventName: "closeEvent", listenerFunc: UrlChangeListener) => Promise<PluginListenerHandle> & PluginListenerHandle
Listen for close click only for openWebView
Param | Type |
---|---|
eventName |
'closeEvent' |
listenerFunc |
UrlChangeListener |
Returns: Promise<PluginListenerHandle> & PluginListenerHandle
Since: 0.4.0
addListener(eventName: "confirmBtnClicked", listenerFunc: ConfirmBtnListener) => Promise<PluginListenerHandle> & PluginListenerHandle
Will be triggered when user clicks on confirm button when disclaimer is required, works only on iOS
Param | Type |
---|---|
eventName |
'confirmBtnClicked' |
listenerFunc |
ConfirmBtnListener |
Returns: Promise<PluginListenerHandle> & PluginListenerHandle
Since: 0.0.1
removeAllListeners() => Promise<void>
Remove all listeners for this plugin.
Since: 1.0.0
reload() => Promise<any>
Reload the current web page.
Returns: Promise<any>
Since: 1.0.0
Prop | Type | Description | Since |
---|---|---|---|
url |
string |
Target URL to load. | 0.1.0 |
headers |
Headers |
Headers to send with the request. | 0.1.0 |
isPresentAfterPageLoad |
boolean |
if true, the browser will be presented after the page is loaded, if false, the browser will be presented immediately. | 0.1.0 |
preventDeeplink |
boolean |
Prop | Type | Description | Default | Since |
---|---|---|---|---|
url |
string |
Target URL to load. | 0.1.0 | |
headers |
Headers |
Headers to send with the request. | 0.1.0 | |
shareDisclaimer |
DisclaimerOptions |
share options | 0.1.0 | |
toolbarType |
ToolBarType |
Toolbar type | ToolBarType.DEFAULT |
0.1.0 |
shareSubject |
string |
Share subject | 0.1.0 | |
title |
string |
Title of the browser | 'New Window' |
0.1.0 |
backgroundColor |
BackgroundColor |
Background color of the browser, only on IOS | BackgroundColor.BLACK |
0.1.0 |
isPresentAfterPageLoad |
boolean |
Open url in a new window fullscreen isPresentAfterPageLoad: if true, the browser will be presented after the page is loaded, if false, the browser will be presented immediately. | false |
0.1.0 |
showReloadButton |
boolean |
Shows a reload button that reloads the web page | false |
1.0.15 |
closeModal |
boolean |
CloseModal: if true a confirm will be displayed when user clicks on close button, if false the browser will be closed immediately. | false |
1.1.0 |
closeModalTitle |
string |
CloseModalTitle: title of the confirm when user clicks on close button, only on IOS | 'Close' |
1.1.0 |
closeModalDescription |
string |
CloseModalDescription: description of the confirm when user clicks on close button, only on IOS | 'Are you sure you want to close this window?' |
1.1.0 |
closeModalOk |
string |
CloseModalOk: text of the confirm button when user clicks on close button, only on IOS | 'Close' |
1.1.0 |
closeModalCancel |
string |
CloseModalCancel: text of the cancel button when user clicks on close button, only on IOS | 'Cancel' |
1.1.0 |
visibleTitle |
boolean |
visibleTitle: if true the website title would be shown else shown empty | true |
1.2.5 |
toolbarColor |
string |
toolbarColor: color of the toolbar in hex format | '#ffffff'' |
1.2.5 |
showArrow |
boolean |
showArrow: if true an arrow would be shown instead of cross for closing the window | false |
1.2.5 |
Prop | Type |
---|---|
title |
string |
message |
string |
confirmBtn |
string |
cancelBtn |
string |
Prop | Type |
---|---|
remove |
() => Promise<void> |
Prop | Type | Description | Since |
---|---|---|---|
url |
string |
Emit when the url changes | 0.0.1 |
Prop | Type | Description | Since |
---|---|---|---|
url |
string |
Emit when a button is clicked. | 0.0.1 |
(state: UrlEvent): void
(state: BtnEvent): void
Members | Value |
---|---|
ACTIVITY |
"activity" |
NAVIGATION |
"navigation" |
BLANK |
"blank" |
DEFAULT |
"" |
Members | Value |
---|---|
WHITE |
"white" |
BLACK |
"black" |
Credits
The @capgo/inappbrowser
package is a Capacitor plugin that allows you to open a URL in an in-app browser window. Here's a step-by-step guide on how to use this package:
To install the package, run the following command in your project's root directory:
npm install @capgo/inappbrowser
npx cap sync
Import the InAppBrowser
class from the @capgo/inappbrowser
package:
import { InAppBrowser } from '@capgo/inappbrowser';
Use the InAppBrowser.open
method to open a URL in a new fullscreen window:
InAppBrowser.open("YOUR_URL");
Replace "YOUR_URL"
with the URL you want to open.
You can also use other methods provided by the InAppBrowser
class:
clearCookies
: Clear all cookies.close
: Close the in-app browser window.openWebView
: Open a URL in a new webview with toolbars.setUrl
: Set the URL of the in-app browser.Refer to the API section below for more details on these methods.
The @capgo/inappbrowser
package provides the following API methods:
open(options: OpenOptions)
: Open a URL in a new fullscreen window. Takes an OpenOptions
object as a parameter.clearCookies()
: Clear all cookies.close()
: Close the in-app browser window.openWebView(options: OpenWebViewOptions)
: Open a URL in a new webview with toolbars. Takes an OpenWebViewOptions
object as a parameter.setUrl(options: { url: string; })
: Set the URL of the in-app browser. Takes an object with a url
property as a parameter.addListener('urlChangeEvent', listenerFunc: UrlChangeListener)
: Listen for URL change events. Takes a UrlChangeListener
function as a parameter.addListener('closeEvent', listenerFunc: UrlChangeListener)
: Listen for close events. Takes a UrlChangeListener
function as a parameter.addListener('confirmBtnClicked', listenerFunc: UrlChangeListener)
: Listen for confirm button click events. Takes a UrlChangeListener
function as a parameter.removeAllListeners()
: Remove all event listeners.For more information on the parameters and return values of these methods, refer to the package documentation.
And that's it! You've learned how to use the @capgo/inappbrowser
package to open URLs in an in-app browser window in Capacitor. Happy coding!