首页 > 解决方案 > UIWebView 向 Apple 提交 ionic 应用程序时出错

问题描述

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

Apple 的错误报告

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

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

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

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

我更新了我的科尔多瓦和我的离子版本:科尔多瓦版本 - 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-toolkit:1.4.1

电容器:

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

科尔多瓦:

Cordova CLI:9.0.0 (cordova-lib@9.0.1) Cordova 平台:ios 5.1.1 Cordova 插件:cordova-plugin-ionic-keyboard 2.2.0,cordova-plugin-ionic-webview 5.0.0,(和 16其他插件)

效用:

cordova-res:未安装本机运行:1.0.0

系统:

ios-sim:8.0.2 NodeJS:v12.18.1 (/usr/local/bin/node) npm:6.14.5 OS:macOS Catalina Xcode:Xcode 11.5 Build 11E608c

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

科尔多瓦-插件-webview 版本

WKWebViewOnly

科尔多瓦-ios版本

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

苹果错误报告

标签: iosionic-frameworkuiwebview

解决方案


我最近已针对确切问题修复了我的应用程序,以下是我为解决该问题而采取的步骤:

  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-ios和进行了更新cordova-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 应用并将其发布到应用商店时,您可以看到问题将得到修复。


推荐阅读