Cordova UIWebView API 不推荐使用的 API 使用

Posted

技术标签:

【中文标题】Cordova UIWebView API 不推荐使用的 API 使用【英文标题】:Cordova UIWebView APIs Deprecated API Usage 【发布时间】:2020-01-14 16:17:48 【问题描述】:

我有点困惑,因为当我上传到 App Store 时,我仍然收到 ITMS-90809:已弃用 API 使用警告。我已经将我的 cordova-ios 平台升级到 5.1.1 版,并将我的 InAppBrowser 升级到 3.2.0

这是我的插件列表:

cordova-plugin-device 2.0.2 "Device"
cordova-plugin-file 6.0.1 "File"
cordova-plugin-inappbrowser 3.2.0 "InAppBrowser"
cordova-plugin-keyboard 1.2.0 "Keyboard"
cordova-plugin-screen-orientation 3.0.1 "Screen Orientation"
cordova-plugin-statusbar 2.4.3-dev "StatusBar"
cordova-plugin-whitelist 1.3.3 "Whitelist"
cordova-plugin-wkwebview-engine 1.1.4 "Cordova WKWebView Engine"
cordova.plugins.diagnostic 5.0.1 "Diagnostic"

我在 config.xml 中添加了 WKWebViewOnly。这是 ios 的 config.xml

<platform name="ios">
    <allow-intent href="itms:*" />
    <allow-intent href="itms-apps:*" />
    <icon  src="res/icon/ios/icon-57.png"  />
    <icon  src="res/icon/ios/icon-57-2x.png"  />
    <icon  src="res/icon/ios/icon-72.png"  />
    <icon  src="res/icon/ios/icon-72-2x.png"  />
    <icon  src="res/icon/ios/Icon-1024.png"  />
    <preference name="Orientation" value="portrait" />
    <preference name="KeyboardShrinksView" value="false" />
    <feature name="CDVWKWebViewEngine">
        <param name="ios-package" value="CDVWKWebViewEngine" />
    </feature>
    <preference name="CordovaWebViewEngine" value="CDVUIWebViewEngine" />
    <preference name="WKWebViewOnly" value="true" />
</platform>

我不确定我做错了什么。

【问题讨论】:

【参考方案1】:

您能否在您的 xcode 控制台中检查正在加载 WkWebwiew 或 UIWebview 的内容。

【讨论】:

你能解释一下如何检查 xcode,正在加载哪个? App run chesinapudu console lo kanipistadi bro WkWebwiew na leka UIWebview lo open avuthunda ani telustadi. 你有参考截图吗? @mepraveenk 明白了...?【参考方案2】:

这里有 2 件事,

    您是否通过使用升级到 WKWebView

ionic cordova 插件添加 cordova-plugin-ionic-webview --save

    CordovaWebViewEngine 的值应为 CDVWKWebViewEngine

【讨论】:

点击此链接进行正确的 WKWebView 升级:ionicframework.com/docs/v3/wkwebview 我没有使用 Ionic。所以这是我使用的插件github.com/apache/cordova-plugin-wkwebview-engine 1.1.4版 我已升级到 1.2.1 并尝试运行该应用,但它现在卡在启动画面上 哦,好的,请确保您从github.com/apache/cordova-plugin-wkwebview-engine 安装 wkwebview 插件,正如我提到的那样,CordovaWebViewEngine 应该使用 CDVWKWebViewEngine 来利用 wkwebview 引擎。 已经将值更改为 CDVWKWebViewEngine 但它不再工作了。现在卡在启动画面上:(【参考方案3】:

问题在于 inappbrowser 插件,您可能需要将其更新到最新版本。

【讨论】:

以上是关于Cordova UIWebView API 不推荐使用的 API 使用的主要内容,如果未能解决你的问题,请参考以下文章

ITMS-90809:不推荐使用的 API 使用——Apple 将停止接受使用 UIWebView API 的应用程序提交

ITMS-90809:不推荐使用的 API 使用 - Apple 将停止接受使用 UIWebView API 的应用程序的提交

ITMS-90809:不推荐使用的 API - 不再接受使用 UIWebView 的新应用程序。相反,使用 WKWebView 来提高安全性和可靠性

Cordova iOS 的 UIWebView 策略

Cordova + Crosswalk iOS 仍在使用 UIWebView

添加资源路径到 UIWebView Cordova IOS