@capacitor/browser
Browser API は、アプリ内ブラウザを開き、ブラウザイベントをサブスクライブする機能を提供します。
iOS では、これは SFSafariViewController を使用しており、主要な OAuth サービスのアプリ内ブラウザの要件に準拠しています。
インストール
npm install @capacitor/browser
npx cap sync
Android
変数
このプラグインは、次のプロジェクト変数(アプリの variables.gradle ファイルで定義)を使用します
androidxBrowserVersion:androidx.browser:browserのバージョン (デフォルト:1.7.0)
例
import { Browser } from '@capacitor/browser';
const openCapacitorSite = async () => {
await Browser.open({ url: 'http://capacitorjs.com/' });
};
API
open(...)
open(options: OpenOptions) => Promise<void>
指定されたオプションでページを開きます。
| パラメーター | タイプ |
|---|---|
options | OpenOptions |
以降 1.0.0
close()
close() => Promise<void>
Web & iOS のみ: 開いているブラウザウィンドウを閉じます。
他のプラットフォームでは何もしません。
以降 1.0.0
addListener('browserFinished', ...)
addListener(eventName: 'browserFinished', listenerFunc: () => void) => Promise<PluginListenerHandle>
Android & iOS のみ: ブラウザ終了イベントをリッスンします。これは、ユーザーがブラウザを閉じたときに発生します。
| パラメーター | タイプ |
|---|---|
eventName | 'browserFinished' |
listenerFunc | () => void |
戻り値: Promise<PluginListenerHandle>
以降 1.0.0
addListener('browserPageLoaded', ...)
addListener(eventName: 'browserPageLoaded', listenerFunc: () => void) => Promise<PluginListenerHandle>
Android & iOS のみ: ページの読み込み完了イベントをリッスンします。これは、open メソッドに渡された URL の読み込みが完了したときにのみ発生します。後続のページ読み込みでは呼び出されません。
| パラメーター | タイプ |
|---|---|
eventName | 'browserPageLoaded' |
listenerFunc | () => void |
戻り値: Promise<PluginListenerHandle>
以降 1.0.0
removeAllListeners()
removeAllListeners() => Promise<void>
このプラグインのすべてのネイティブリスナーを削除します。
以降 1.0.0
インターフェース
OpenOptions
open に渡されるオプションを表します。
| プロパティ | タイプ | 説明 | 以降 |
|---|---|---|---|
url | string | ブラウザが開かれる URL。 | 1.0.0 |
windowName | string | Web のみ: ブラウザを開くためのオプションのターゲット。window.open の target プロパティに従います。デフォルトは _blank です。他のプラットフォームでは無視されます。 | 1.0.0 |
toolbarColor | string | ツールバーの色が設定される 16 進数の色。 | 1.0.0 |
presentationStyle | 'fullscreen' | 'popover' | iOS のみ: ブラウザの表示スタイル。デフォルトは fullscreen です。他のプラットフォームでは無視されます。 | 1.0.0 |
width | number | iOS のみ: iPad で presentationStyle 'popover' を使用する場合のブラウザの幅。他のプラットフォームでは無視されます。 | 4.0.0 |
height | number | iOS のみ: iPad で presentationStyle 'popover' を使用する場合のブラウザの高さ。他のプラットフォームでは無視されます。 | 4.0.0 |
PluginListenerHandle
| プロパティ | タイプ |
|---|---|
remove | () => Promise<void> |