UIWebView 向 Apple 提交离子应用程序时出错

UIWebView error submiting ionic app to Apple

我开发了一个适用于 Android 和 iOS 的离子应用程序。 当我尝试向 iOS 提交申请时,我总是收到同样的错误。

我搜索了我的整个项目,但找不到任何对 UIWebView 的引用。

我已经按照这个 link 更新了我所有的插件。

我将此代码添加到我的 config.xml:

<preference name="WKWebViewOnly" value="true" />
<feature name="CDVWKWebViewEngine">
    <param name="ios-package" value="CDVWKWebViewEngine" />
</feature>
<preference name="CordovaWebViewEngine" value="CDVWKWebViewEngine" />

我更新了我的 cordova 和我的 ionic 版本: 科尔多瓦版本 - 9.0.0 (cordova-lib@9.0.1) 离子版本 - 6.10.1

我尝试了几个教程,例如这些链接和其他链接中的教程:

https://ionicframework.com/blog/understanding-itms-90809-uiwebview-api-deprecation/ https://mobilefirstplatform.ibmcloud.com/blog/2020/01/27/Removal-of-UIWebview/

但是每当我向 Apple 提交申请时,都会因为这个错误而被拒绝。

如何删除 UIWebView 或使我的申请获得批准?

谢谢

更新:

离子:

离子 CLI:6.10.1 (/usr/local/lib/node_modules/@ionic/cli) 离子框架:@ionic/angular 4.10.2 @angular-devkit/build-angular:0.13.9 @angular-devkit/schematics:7.2.4 @angular/cli:7.3.8 @ionic/angular-工具包:1.4.1

电容器:

电容器 CLI:1.5.2 @capacitor/core:1.0.0-beta.19

科尔多瓦:

Cordova CLI:9.0.0 (cordova-lib@9.0.1) 科尔多瓦平台:ios 5.1.1 Cordova 插件:cordova-plugin-ionic-keyboard 2.2.0,cordova-plugin-ionic-webview 5.0.0,(以及其他 16 个插件)

效用:

cordova-res : 未安装 native-run : 1.0.0

系统:

ios-sim:8.0.2 NodeJS:v12.18.1 (/usr/local/bin/node) npm:6.14.5 OS : macOS 卡特琳娜 Xcode : Xcode 11.5 构建版本 11E608c

正在使用@Harish 回答更新我的问题

但是我仍然得到同样的错误

  1. 您可能使用的是旧的 ionic 版本。 您在问题中粘贴的版本是 Ionic CLI 的版本。 运行 项目文件夹中的“ionic info”以查看您使用的 Ionic 框架版本。

  2. 如果您使用的是离子框架 3+ 版本。 然后通过以下方式安装 ionic webview 插件:

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

我最近已针对确切问题修复了我的应用程序,以下是我为修复该问题所遵循的步骤:

  1. 确保您的 cordova-plugin-ionic-webview 已更新到最新版本 5.0.0。您需要 运行 这两个命令来执行此操作。
ionic cordova plugin remove cordova-plugin-ionic-webview
ionic cordova plugin add cordova-plugin-ionic-webview@latest
  1. 确保您的 cordova-ios 已更新到最新版本 6.0.0。 运行 这个命令来更新它。
npm install cordova-ios@latest --save
  1. 检查您的 package.json 以查看 cordova-ioscordova-plugin-ionic-webview 的版本是否更新。

  2. 确保将 WKWebViewOnly 首选项添加到 config.xml 文件。

<platform name="ios">
    <preference name="WKWebViewOnly" value="true" />
    ...
</platform>
  1. 这是最重要的一步。确保删除 ios 平台并重新添加。 运行 这些命令用于删除和添加 ios 平台。
ionic cordova platform rm ios
ionic cordova platform add ios

现在,当您构建 ios 应用程序并将其发布到应用程序商店时,您会发现问题已得到解决。