问题标签 [ionic-webview]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
7170 浏览

javascript - Ionic 应用程序上的 Webview

我使用 Ionic 框架创建了一个移动应用程序。我想在 ionic 上创建一个 webview。为此,我使用了 cordova-plugin-inappbrowser 插件。现在,这个插件可以工作了,但是插件不稳定。我想用 chrome 浏览器而不是默认浏览器创建 webview。为此,我使用了浏览器人行横道并删除了 cordova-plugin-inappbrowser 插件。但是现在,webview 无法正常工作。现在,当我同时使用浏览器人行横道和 cordova-plugin-inappbrowser 插件时,webview 看起来很糟糕。关于如何使用 chrome 浏览器创建 webview 的任何想法?

0 投票
1 回答
4465 浏览

javascript - Ionic 2 - 是否可以在主要的 ionic webview 中有另一个 webview?

如标题所述。我正在开发一个应用程序,允许您通过第 3 方支付网关进行支付。支付网关支持 2 种支付类型:信用卡和直接借记。

我目前正在使用 iframe,如果付款方式是信用卡,它可以正常工作。问题在于直接借记,因为用户需要登录另一个第三方银行门户,它迫使 ionic 打开平台的浏览器弹出窗口。我想至少导航 iframe 而不是打开弹出窗口。我尝试了很多方法来拦截弹出窗口,但都失败了。我可以停止弹出窗口的唯一方法是使用 iframe 的沙箱,如下所示:

但有了这个,我不能做任何其他事情,页面甚至不能导航。

那么是否可以在离子网络视图中嵌入另一个网络视图?或者另一种可能的解决方案是导航 iframe 而不是打开弹出窗口;基本上是拦截iframe 的 window.open() 而不是阻塞。

0 投票
2 回答
16903 浏览

cordova - Ionic 3 中的 Web 视图

我有一个博客,我想将其转换为离子应用程序。我使用InAppBrowser插件,但问题是当我按下后退按钮时,它会进入我的默认离子home页面。

我按照以下步骤操作:

ionic start myblog

ionic platform add android

ionic cordova plugin add cordova-plugin-inappbrowser

npm install --save @ionic-native/in-app-browser

然后添加provider并写入以下内容app.modulehome.ts

也不location=no工作。像android ionic 提供的webview?? 谁能帮我吗 ?任何帮助表示赞赏。:)

0 投票
0 回答
658 浏览

javascript - cordova-plugin-ionic-webview @ 2.x 与 @1.2.1

我们目前正在使用 cordova-plugin-ionic-webview 在我们的 iOS/Android 移相器应用程序中启用 WKWebView(我知道 cordova-plugin-ionic-webview 仅适用于 iOS)。

我最近看到了插件 cordova-plugin-ionic-webview@beta 即 Ionic Web View cordova-plugin-ionic-webview @ 2.x Beta。

我的主要问题是:

  1. 它对 cordova-plugin-ionic-webview 1.2.1 有什么改进
  2. 我有点困惑它是否也适用于Android
  3. 还有其他更适合我的插件吗?
  4. 添加此插件后,在 iPhone X 上,底部的主页指示器与我的应用程序的页脚重叠。任何解决方法,因为我们有一个基于画布的 Phaser 框架应用程序,并且它难以使用安全区域插图。

尝试粘贴 - (UIRectEdge)preferredScreenEdgesDeferringSystemGestures{ return UIRectEdgeAll; }; 在 CDVViewController 但仍然不起作用。

0 投票
1 回答
4023 浏览

android - ionic-webview 中的 Ionic 4 getUserMedia NotAllowed

这发生在 ionic 应用程序的 android 版本中。我正在使用 iframe 来测试 getUserMedia。webrtc 的演示页面给了我“GetUserMedia : Not Allowed Error”。我已在 AndroidManifest.xml 中授予所有权限,但仍无法访问相机。为了获得外部网站的相机访问权限,还有什么需要做的吗?

主页.html

配置文件

0 投票
2 回答
5099 浏览

android - getUserMedia 是否适用于 Android 应用程序的 ionic-webview?

我已授予相机和麦克风的所有权限。在 iframe 的元标记中启用 CSP。仍然无法在 iframe 的 getusermedia 中获得相机和麦克风的许可。

主页.html

离子内容类='填充有子标题'>

应用组件.ts

AndroidManifest.xml

0 投票
2 回答
916 浏览

android - 离子原生插件升级到 WKWebView 后停止工作

我最近将我的应用程序升级到了 WKWebView,从那以后我的原生插件就停止了工作。具体来说,Camera and Geolocation 插件已停止工作。最糟糕的是,没有抛出任何错误。我尝试控制台记录每一步,显然,承诺 geolocation.getCurrentPosition() 永远不会得到解决。

此外,我收到一条警告,说明我的插件处于不一致状态,并且设备就绪未在 5000 毫秒内触发。

我尝试了以下事情:

  1. 使用ionic Cordova plugin rm一一卸载插件,现在设备就绪事件在8秒后触发,但至少触发了。
  2. 在浏览器或 iOS 模拟器中运行应用程序可以正常工作,并且相机和地理位置都可以工作。
  3. 尝试创建一个新应用程序并尝试重现该错误,但它在新应用程序中有效。
  4. 尝试删除平台android并再次添加。

我的应用在升级之前运行良好。我升级到 WKWebView 是因为一项功能在 iOS 上不起作用。自从我这样做后,我的本机插件就停止了工作。有没有什么办法解决这一问题。我有一个 git 存储库,我可以回滚这个提交,但我认为问题在于 gitignore 中的文件。

0 投票
2 回答
5044 浏览

android - @ionic/angular 4.0.0-beta.13:不允许加载本地资源:使用 webview 2.2.3 - Ionic CLI 4.3.1

从相机拍照后,这些路径就来了。

我使用的是 Ionic 4,其中 WebView 是 2.2.3,通过应用观察到所有类型的回复,但没有效果。

我曾经回答过这个

不允许加载本地资源:ionic 3 android

所以我没有在设备上显示应用程序,这个不一样。

0 投票
1 回答
559 浏览

angular - 在 ionic 中处理 web 视图的后退按钮

我试图在 ionic 中处理 web 视图的后退按钮 

为此,我使用 navcontoller 在 ionic 应用程序中导航

我收到一个错误,我在下面提到了使用 navcontrol

我正在将我添加到我的网站的 ts 代码放入我收到错误消息。我在 navcontoller 的构造函数中定义了 navCtrl 并将其用于window.onpopstate

0 投票
1 回答
532 浏览

ios - cordova-plugin-ionic-webview 在 iOS 中发送空源

我有一个使用cordova-plugin-ionic-webview插件的 ionic 3 hybrid/cordova 应用程序(它将在 iOS 中使用 WKWebView)。@1.2.1由于兼容性问题( ),我一直使用这个插件的旧版本。今天突然间,新版本开始出现问题,我的应用程序origin: null在 http 请求上发送原始标头。我也读过其他人也有这个问题,但是文档清楚地表明这个插件已经迭代了其他风格的起源(但不是空的)。

我决定升级,看看发生了什么。我升级到最新的 2.x 版本 ( @2.3.1)。我得到了同样的结果。然后我删除了这个插件(我相信它使用了非 WkWebView webview),一切都恢复了,但我想使用这个插件来提高性能。

直到今天,我相信 iOS 上的来源始终是http://localhost:8080。有没有其他人看到这个插件的原点设置为空?任何想法为什么或如何解决它?