gpt4 book ai didi

ios - cordova inappbrowser iOS 问题

转载 作者:行者123 更新时间:2023-11-29 01:39:20 25 4
gpt4 key购买 nike

我正在开发一款适用于 Android 和 iOS 的应用程序,该应用程序将打开外部链接。我目前正在使用 cordova-plugin-inappbrowser 1.0.1 打开我的链接,它在 Android 中运行良好,但我似乎遇到了许多其他人遇到的同样问题。在 iOS 中,我没有出现工具栏,因此陷入困境,因为我无法单击“完成”按钮(或与此相关的后退/前进按钮)。我已经使用 PhoneGap 在线构建和通过命令构建了应用程序线工具,在每个实例中具有相同的行为。它在模拟环境或 native 设备环境中均不起作用。我一直在网上搜索,这似乎是一个极其常见的问题,但在过去 2 天和约 15 小时的测试中,所提出的解决方案都没有起作用(只是一个愚蠢的小链接!)我想继续留在-应用程序,但如果那是唯一的解决方案,我不会反对去 Safari 。我的相关代码和版本:Phonegap cli-5.1.1 (iOS 3.8/Android 4.02) Cordova 3.5.0-0.2.7cordova-plugin-inappbrowser 1.0.1

config.xml相关代码:

<plugins>
<plugin name="InAppBrowser" value="CDVInAppBrowser" />
</plugins>

<feature name="InAppBrowser">
<param name="ios-package" value="CDVInAppBrowser" />
</feature>

index.html:

    <link rel="stylesheet" href="themes/jquery.mobile.icons.min.css" />
<link rel="stylesheet" href="jquery/jquery.mobile.structure-1.4.5.min.css" />
<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
<script src="jquery/jquery-2.1.4.min.js"></script>
<script src="jquery/jquery.mobile-1.4.5.min.js"></script>
<script src="phonegap.js"></script>
<script src="cordova.js"></script>
<script src="cordova_plugins.js"></script>
<script type="text/javascript" charset="utf-8">
// Wait for Cordova to load
//
document.addEventListener("deviceready", onDeviceReady, false);
// Global InAppBrowser reference
var iabRef = null;
function iabLoadStart(event) {
alert(event.type + ' - ' + event.url);
}
function iabLoadStop(event) {
alert(event.type + ' - ' + event.url);
}
function iabClose(event) {
alert(event.type);
iabRef.removeEventListener('loadstart', iabLoadStart);
iabRef.removeEventListener('loadstop', iabLoadStop);
iabRef.removeEventListener('exit', iabClose);
}
// Cordova is ready
//
function onDeviceReady() {
alert('Device is ready!');
//iabRef = window.open('http://apache.org', '_blank', 'location=yes');
//iabRef.addEventListener('loadstart', iabLoadStart);
//iabRef.addEventListener('loadstop', iabLoadStop);
//iabRef.addEventListener('exit', iabClose);
}
</script>
<style type="text/css">
.centeredImage
{
text-align:center;
margin-top:0px;
margin-bottom:0px;
padding:0px;
}
body
{
background: #000 !important;
background-image:url(backgrounds/1080widephone.png) !important;
background-size:cover !important;
}
.ui-content{
background: transparent !important;
}
.ui-page{
background: transparent !important;
}
.ui-footer{
background: transparent !important;
}
</style>
</head>

各种链接(全部充当按钮):

window.open('url' ,'_blank')

(注意:这似乎在 iOS 的默认 WebView 和 Android 的 inappbrowser 中打开)

cordova.InAppBrowser.open('url' ,'_blank', 'location=yes' , 'toolbar=yes', 'toolbarposition=top' , closebuttoncaption=Return'

(注意:当我在 iOS 或 Android 构建中使用它时没有任何反应。我将此语法基于 description )

我的下意识 react 是该插件没有加载,但我不明白如果它在 android 版本中明显工作但在 iOS 版本中使用与phonegap 版本上完全相同的代码则不工作,那么情况会怎样。任何帮助将不胜感激,我觉得我在这里兜圈子!

最佳答案

我知道这是一个迟到的回复,但我找到了一个可能的解决方案。

就我而言,我在 Ionic 框架中使用 ngCordova 的 $InAppBrowser 打开文件或 URL。为了测试这一点,我使用了 Xcode 的 iPhone 模拟器以及 Ionic 的“Ionic View”应用程序。在这两个选项中,$InAppBrowser 将不会显示“后退”或“完成”按钮。

但是,如果您在 Xcode 中打开项目的 .xcodeproj 并在实际的 iOS 设备上运行应用程序,则 InAppBrowser 应该按预期工作。

我在这个问题上花了几个小时才发现 Ionic View 限制了 $InAppBrowser 的 options。但是,我仍然不能 100% 确定为什么这在 iOS 模拟器中不起作用。

注意:即使您直接使用 Cordova 而不是 ngCordova,我相信所有这些都适用。

关于ios - cordova inappbrowser iOS 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32596835/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com