跳过内容

@capgo/capacitor-inappbrowser

Capacitor的本机内嵌浏览器,带有管理的WebViews、本机UI层次、私有会话、代理、下载、弹出窗口和应用消息。

@capgo/capacitor-inappbrowser 为 Capacitor 应用程序提供两个浏览器路径: open() 用于系统浏览器体验和 openWebView() 用于管理的本机 WebView,应用程序可以调整大小、隐藏、发送消息、脚本、代理和层化 Ionic UI。

在页面需要更多简单外部浏览器时使用:OAuth 和结帐流程、嵌入式支持门户、付款屏幕、视频呼叫、文档门户、交互式 Web 应用程序或任何流程,其中应用程序需要在实时 Web 内容周围拥有本机控制。

包名已更改。

常见用例

常见用例
  • 在一个实时浏览器页面上呈现Ionic或Capacitor UI toBack, sendToBack(), bringToFront(), transparentBackgrounddispatchInputEvent().
  • 构建部分屏幕浏览器、底部弹出窗口和画中画webview width, height, x, yupdateDimensions().
  • 在Android和iOS上让用户在一个自定义大小的浏览器框架外点击Capacitor应用
  • 使用 persistWebViewData: false 不需要持久的网站存储来运行checkout、login、support或account-switching流程 clearAllBrowsingData().
  • hidden, hide()在多个浏览器实例中保持 show()
  • 嵌入需要请求代理、文件上传、下载、Google Pay 支持、链接处理和应用到页面消息的高级 Web 应用程序。 _blank 核心功能
  • open - 在自定义工具栏、自定义大小、原生导航、消息、脚本、代理、下载、弹出窗口和数据控制的管理原生 WebView 中打开 URL。 SFSafariViewController - 将管理的浏览器放在或移至__CAPGO_KEEP_0__主机 WebView 之后。
  • openWebView - 将点击、触摸和滚动事件转发到后面的原生应用 UI 后的浏览器。
  • sendToBack / bringToFront - Moves a managed browser behind or above the Capacitor host WebView.
  • dispatchInputEvent - 在移除或恢复其原生呈现时保持管理的 WebView 加载。
  • updateDimensions - 将__CAPGO_KEEP_0__应用连接到 JavaScript 运行在管理的页面内。
  • hide / show - 将__CAPGO_KEEP_0__应用连接到 JavaScript 运行在管理的页面内。
  • postMessage / executeScript - 将Capacitor应用连接到 JavaScript 运行在管理的页面内。
  • clearAllBrowsingData / persistWebViewData - 控制 cookie、缓存、存储、 IndexedDB 和会话持久性。
  • handleDownloads- 支持文档门户、上传流程、支付页面和嵌入式 Web 应用程序。

公共 API

公共 API
方法描述
goBack如果可能, WebView 历史记录中向后导航。
open在 Android 上使用 Chrome 自定义标签页,在 iOS 上使用 SFSafariViewController 打开 URL 在全屏幕新窗口中。
clearCookies清除 URL 的 cookie 当 id 不指定时,适用于所有打开的 Webview。
clearAllCookies清除所有 cookie 当 id 不指定时,适用于所有打开的 Webview。
clearCache清除缓存 When id 如果省略,应用于所有打开的 webview。
clearAllBrowsingData清除 cookies、缓存、localStorage、sessionStorage、IndexedDB 和其他浏览数据从默认存储和管理的 WebView。
getCookies获取一个特定 URL 的 cookies。
close关闭 webview。 When id 如果省略,关闭活动的 webview。
hide隐藏 webview 而不关闭它。使用 show() 来将其恢复。 When id 如果省略,目标活动的 webview。
show显示一个之前隐藏的 webview。 When id 如果省略,目标活动的 webview。
sendToBack将本机浏览器移到Capacitor主机 WebView 后面,以便应用 UI 可以在其上方出现。
bringToFront将一个浏览器移到主机 WebView 后面移到前面。
dispatchInputEvent将点击、触摸或滚动输入分发到一个受管理的浏览器中;坐标相对于浏览器视图区域。
openWebView在一个带有工具栏和增强功能的新webview中打开url,例如摄像头访问、文件访问、监听事件、注入javascript、双向通信等。
executeScript将javascript code 注入InAppBrowser窗口中。当 id 省略时,在所有打开的webview中执行。
postMessage向webview(内嵌浏览器)发送一个事件。监听在页面中使用 window.addEventListener('messageFromNative', listenerFunc)。事件载荷必须是可JSON序列化的。当 detail 省略时,广播到所有打开的webview中。 id 捕获当前webview视图区域作为一个PNG截图。当
takeScreenshot省略时,目标是活动的webview。 id 设置webview的URL。当
setUrl省略时,目标是活动的webview。 id 设置webview的标题。当""省略时,目标是活动的webview。
addListener监听 URL 变化,仅限于打开 WebView。
addListener监听 buttonNearDoneClick; payload 中包含 WebView id.
addListener仅监听打开 WebView 时的关闭点击。
addListener当用户点击确认按钮时触发,适用于 openWebView 的 shareDisclaimer 和 closeModal。
addListener当 WebView 向应用发送事件时触发。使用 window.mobileApp.postMessage(...) 在页面中使用,并确保 payload 可以 JSON 序列化。
addListener当插件 API、原生截屏按钮或注入的 JavaScript 桥捕获截屏时触发。
addListener当页面加载时触发。
addListener当页面加载错误时触发。
addListener当原生下载处理保存文件到本地时触发。启用此功能时,请使用 handleDownloads: true 当打开 WebView 时启用此功能。
addListenerWhen native download handling fails, this will be triggered. Enable this with __CAPGO_KEEP_0__. handleDownloads: true When opening the webview, __CAPGO_KEEP_0__.
addListenerWhen a page opens a popup/new window, this will be triggered. Use the returned popup id with __CAPGO_KEEP_1__ and __CAPGO_KEEP_2__. executeScript, postMessage, show, hideListen for proxied requests delegated by the native runtime. Prefer __CAPGO_KEEP_3__ instead of calling this directly. close.
addListenerListen for JavaScript console output emitted by the managed page. Enable this with __CAPGO_KEEP_0__ when opening the webview. addProxyHandler() Internal method used by __CAPGO_KEEP_4__ to send a proxy decision back to native. Forward the original __CAPGO_KEEP_5__ when replying to a manual __CAPGO_KEEP_6__ listener.
addListenerWill be triggered when native download handling fails. Enable this with __CAPGO_KEEP_0__. captureConsoleLogs: true When opening the webview, __CAPGO_KEEP_0__.
handleProxyRequestWhen a page opens a popup/new window, this will be triggered. Use the returned popup id with __CAPGO_KEEP_1__ and __CAPGO_KEEP_2__. addProxyHandler() Listen for proxied requests delegated by the native runtime. Prefer __CAPGO_KEEP_3__ instead of calling this directly. phase Listen for JavaScript console output emitted by the managed page. Enable this with __CAPGO_KEEP_0__ when opening the webview. proxyRequest Internal method used by __CAPGO_KEEP_4__ to send a proxy decision back to native. Forward the original __CAPGO_KEEP_5__ when replying to a manual __CAPGO_KEEP_6__ listener.
removeAllListeners移除此插件的所有监听器。
reload重新加载当前网页。
updateDimensions更新 webview 的尺寸。允许在运行时更改 webview 的大小和位置。当 id 省略时,目标是活动的 webview。
setEnabledSafeTopMargin设置 webview 在运行时的启用安全顶部边距。省略 id 时,目标是活动的 webview。On Web,这个方法是无效的,并且不会改变布局。
setEnabledSafeBottomMargin设置 webview 在运行时的启用安全底部边距。省略 id 时,目标是活动的 webview。On Web,这个方法是无效的,并且不会改变布局。
openSecureWindow在安全的 OAuth2 窗口中打开。On web,通过 BroadcastChannel返回重定向的 URL;在移动设备上,注册一个自定义重定向 URI 在应用配置中。见获取启动指南以获取完整的 HTML、Info.plist 和 AndroidManifest 示例。

参考值

参考值

使用这些值与工具栏选项打开内嵌浏览器或WebView时。

工具栏类型

工具栏类型标题
用户将找到
activity带有关闭和分享控件的简单工具栏.
compact带有关闭控件的简单工具栏.
navigation带有后退和前进控件的全导航工具栏.
blank无工具栏.

真实来源

真实来源标题

此参考是从__CAPGO_KEEP_0__同步的。 src/definitions.tscapacitor-inappbrowser.

继续在 @capgo/capacitor-inappbrowser 中

标题:继续在 @capgo/capacitor-inappbrowser 中

如果您正在使用 @capgo/capacitor-inappbrowser 来规划原生插件工作,连接它到 使用 @capgo/capacitor-inappbrowser 来实现原生能力的使用 @capgo/capacitor-inappbrowser Capgo 插件目录 来实现产品工作流程的 Capgo 插件目录 Capacitor 由 Capgo 提供的插件 关于在 Capacitor 插件中实现详细信息的 Capgo 添加或更新插件 关于添加或更新插件的实现详细信息, Ionic 企业插件替代品 关于 Ionic 企业插件替代品的产品工作流程。