Javascript 应用商店阻止我的应用程序(ionic cordova ios 6.0)
我正在开发一个应用程序,该应用程序于4月份启动,但被应用程序商店拒绝 我昨天接管了这个项目,删除了平台ios,安装了最新版本(6.0) 然而,虽然6.0版应该停止使用UiWebView,但当我尝试将应用程序发送到Apple store connect时,会收到此错误消息 “ITMS-90809:不推荐的API用法-不再接受使用UIWebView的新应用。请改用WKWebView以提高安全性和可靠性。了解更多信息()。” mypackage.jsonJavascript 应用商店阻止我的应用程序(ionic cordova ios 6.0),javascript,ios,cordova,ionic-framework,uiwebview,Javascript,Ios,Cordova,Ionic Framework,Uiwebview,我正在开发一个应用程序,该应用程序于4月份启动,但被应用程序商店拒绝 我昨天接管了这个项目,删除了平台ios,安装了最新版本(6.0) 然而,虽然6.0版应该停止使用UiWebView,但当我尝试将应用程序发送到Apple store connect时,会收到此错误消息 “ITMS-90809:不推荐的API用法-不再接受使用UIWebView的新应用。请改用WKWebView以提高安全性和可靠性。了解更多信息()。” mypackage.json { "name": "X", "ve
{
"name": "X",
"version": "0.0.1",
"author": "Ionic Framework",
"homepage": "https://ionicframework.com/",
"scripts": {
"ng": "ng",
"start": "ng serve",
"build": "ng build",
"test": "ng test",
"lint": "ng lint",
"e2e": "ng e2e"
},
"private": true,
"dependencies": {
"@angular/common": "~8.1.2",
"@angular/compiler": "~8.1.2",
"@angular/core": "~8.1.2",
"@angular/forms": "~8.1.2",
"@angular/platform-browser": "~8.1.2",
"@angular/platform-browser-dynamic": "~8.1.2",
"@angular/router": "~8.1.2",
"@ionic-native/app-rate": "^5.26.0",
"@ionic-native/badge": "^5.26.0",
"@ionic-native/base64": "^5.26.0",
"@ionic-native/calendar": "^5.26.0",
"@ionic-native/call-number": "^5.26.0",
"@ionic-native/camera": "^5.26.0",
"@ionic-native/clipboard": "^5.26.0",
"@ionic-native/core": "^5.26.0",
"@ionic-native/crop": "^5.26.0",
"@ionic-native/fcm": "^5.26.0",
"@ionic-native/file": "^5.26.0",
"@ionic-native/in-app-browser": "^5.26.0",
"@ionic-native/launch-navigator": "^5.26.0",
"@ionic-native/native-storage": "^5.26.0",
"@ionic-native/network": "^5.26.0",
"@ionic-native/photo-viewer": "^5.26.0",
"@ionic-native/social-sharing": "^5.26.0",
"@ionic-native/splash-screen": "^5.26.0",
"@ionic-native/status-bar": "^5.26.0",
"@ionic-native/stripe": "^5.26.0",
"@ionic/angular": "^4.11.10",
"aios": "0.2.3",
"call-number": "1.0.1",
"com-badrit-base64": "0.2.0",
"com-sarriaroman-photoviewer": "1.2.5",
"cordova-android": "7.1.4",
"cordova-clipboard": "1.3.0",
"cordova-ios": "^6.0.0",
"cordova-plugin-actionsheet": "2.3.3",
"cordova-plugin-apprate": "1.5.0",
"cordova-plugin-badge": "0.8.8",
"cordova-plugin-calendar": "5.1.5",
"cordova-plugin-camera": "4.1.0",
"cordova-plugin-crop": "0.4.0",
"cordova-plugin-device": "^2.0.3",
"cordova-plugin-dialogs": "2.0.2",
"cordova-plugin-facebook4": "1.7.4",
"cordova-plugin-fcm-with-dependecy-updated": "6.4.3",
"cordova-plugin-file": "6.0.2",
"cordova-plugin-inappbrowser": "git+https://github.com/apache/cordova-plugin-inappbrowser.git",
"cordova-plugin-ionic-keyboard": "^2.2.0",
"cordova-plugin-ionic-webview": "^5.0.0",
"cordova-plugin-nativestorage": "2.3.2",
"cordova-plugin-network-information": "2.0.2",
"cordova-plugin-splashscreen": "^5.0.4",
"cordova-plugin-statusbar": "^2.4.3",
"cordova-plugin-whitelist": "^1.3.4",
"cordova-plugin-x-socialsharing": "5.6.8",
"core-js": "^2.6.11",
"es6-promise-plugin": "4.2.2",
"firebase": "^6.6.2",
"ngx-qrcode2": "0.0.9",
"ngx-qrcode3": "^0.3.0",
"ngx-stripe": "^7.4.4",
"rxjs": "^6.5.5",
"tslib": "^1.13.0",
"uk.co.workingedge.phonegap.plugin.launchnavigator": "5.0.4",
"zone.js": "~0.9.1"
},
"devDependencies": {
"@angular-devkit/architect": "~0.801.2",
"@angular-devkit/build-angular": "~0.801.2",
"@angular-devkit/core": "~8.1.2",
"@angular-devkit/schematics": "~8.1.2",
"@angular/cli": "~8.1.2",
"@angular/compiler": "~8.1.2",
"@angular/compiler-cli": "~8.1.2",
"@angular/language-service": "~8.1.2",
"@ionic/angular-toolkit": "~2.0.0",
"@types/jasmine": "~3.3.8",
"@types/jasminewd2": "^2.0.8",
"@types/node": "~8.9.4",
"codelyzer": "^5.2.2",
"jasmine-core": "~3.4.0",
"jasmine-spec-reporter": "~4.2.1",
"karma": "~4.1.0",
"karma-chrome-launcher": "~2.2.0",
"karma-coverage-istanbul-reporter": "~2.0.1",
"karma-jasmine": "~2.0.1",
"karma-jasmine-html-reporter": "^1.5.4",
"protractor": "^5.4.4",
"ts-node": "~7.0.0",
"tslint": "~5.15.0",
"typescript": "~3.4.3"
},
"description": "An Ionic project",
"cordova": {
"plugins": {
"cordova-plugin-whitelist": {},
"cordova-plugin-statusbar": {},
"cordova-plugin-device": {},
"cordova-plugin-splashscreen": {},
"cordova-plugin-ionic-keyboard": {},
"cordova-plugin-camera": {
"ANDROID_SUPPORT_V4_VERSION": "27.+"
},
"uk.co.workingedge.phonegap.plugin.launchnavigator": {
"GOOGLE_API_KEY_FOR_ANDROID": "X",
"OKHTTP_VERSION": "3.12.0",
"LOCATION_USAGE_DESCRIPTION": "This app requires access to your location for navigation purposes"
},
"cordova-plugin-badge": {},
"cordova-plugin-nativestorage": {},
"cordova-clipboard": {},
"com-badrit-base64": {},
"cordova-plugin-file": {},
"cordova-plugin-calendar": {
"CALENDAR_USAGE_DESCRIPTION": " ",
"CONTACTS_USAGE_DESCRIPTION": " "
},
"cordova-plugin-facebook4": {
"APP_ID": "X",
"APP_NAME": "X"
},
"cordova-plugin-network-information": {},
"cordova-plugin-inappbrowser": {},
"cordova-plugin-apprate": {},
"cordova-plugin-x-socialsharing": {
"ANDROID_SUPPORT_V4_VERSION": "24.1.1+",
"PHOTO_LIBRARY_ADD_USAGE_DESCRIPTION": "This app requires photo library access to function properly.",
"PHOTO_LIBRARY_USAGE_DESCRIPTION": "This app requires photo library access to function properly."
},
"mx.ferreyra.callnumber": {},
"cordova-plugin-crop": {},
"com-sarriaroman-photoviewer": {}
},
"platforms": [
"android",
"ios"
]
}
}
如果有人有主意。
提前谢谢。
诚恳地说。最近我已经修复了我的应用程序,以解决这个问题。由于您已将所有软件包更新为最新版本,我建议您直接跳到下面的第四步 对于其他人,以下是解决问题的步骤: 1) 确保您的
cordova插件ionic webview
已更新至最新版本5.0.0
。要做到这一点,您需要运行这两个命令
ionic cordova plugin remove cordova-plugin-ionic-webview
ionic cordova plugin add cordova-plugin-ionic-webview@latest
2) 确保您的cordova ios
已更新至最新版本6.0.0
。运行此命令以更新它
npm install cordova-ios@latest --save
3) 检查您的package.json
以查看cordova ios
和cordova插件ionic webview
的版本是否都已更新
4) 确保将WKWebViewOnly
首选项添加到config.xml
文件中
<platform name="ios">
<preference name="WKWebViewOnly" value="true" />
...
</platform>
现在,当您构建ios应用并将其发布到应用商店时,您可以看到问题将得到解决。请运行此命令并检查哪个插件包含对UIWebView的引用 grep-r“UIWebView”
然后,您可以尝试在编译之前删除所有这些引用。我必须删除AppBrowser中的
cordova插件
&cordova sms插件
,才能使其正常工作。看起来他们都使用UIWebView模块。您有使用uiwebkit的插件吗?尝试更新你的插件,如果失败,创建一个新的应用程序,并将代码复制到那里。你知道我如何验证这一点吗?令人担忧的是,它是一个非常大的应用程序,我担心在0重新启动项目需要时间(即使是通过复制/粘贴)。感谢您的回复。请确保您使用的所有cordova插件都是最新的。我不知道有什么自动的方法可以找到答案。你也可以在整个项目范围内搜索。我已经更新了所有cordova插件,我仍然有同样的担忧……首先,感谢你的消息我已经完成了所有步骤,但苹果商店仍然拒绝我的应用程序。你可以在你的爱奥尼亚应用程序中共享cordova软件包列表吗?我在最初的帖子中添加了my package.json。谢谢看起来inAppBrowser是另外一个可能正在使用UIWebView的插件,您能尝试将其更新到最新版本吗?inAppBrowser插件的最新版本也存在同样的问题:(
ionic cordova platform rm ios
ionic cordova platform add ios