ITMS-90809: Deprecated API Usage - New apps that use UIWebView are no longer accepted. Instead, use WKWebView for improved security and reliability

こ雲淡風輕ζ 提交于 2020-07-23 06:08:19

问题


I use phonegal build but today i get this error when upload .ipa to apple store

ITMS-90809: Deprecated API Usage - New apps that use UIWebView are no longer accepted. Instead, use WKWebView for improved security and reliability

then I removed all cordova plugins in config.xml but still get some error.I researched and find monaca..In monaca configure option I choosed WKWebViewOnly but still i get some error..Here is my config.xml

 <?xml version="1.0" encoding="UTF-8"?>
<widget xmlns="http://www.w3.org/ns/widgets" id="com.demircode.bileteviniz" version="1.3.1">
  <name>BiletEviniz</name>
  <description>BiletEviniz</description>
  <author/>
  <content src="index.html"/>
  <allow-navigation href="*"/>
  <allow-intent href="itms:*"/>
  <allow-intent href="itms-apps:*"/>
  <preference name="Orientation" value="default"/>
  <preference name="loglevel" value="DEBUG"/>
  <preference name="AndroidLaunchMode" value="singleTop"/>
  <preference name="ErrorUrl" value=""/>
  <preference name="Fullscreen" value="false"/>
  <preference name="KeepRunning" value="true"/>
  <preference name="SplashScreen" value="screen"/>
  <preference name="SplashScreenDelay" value="1000"/>
  <preference name="AllowInlineMediaPlayback" value="false"/>
  <preference name="BackupWebStorage" value="cloud"/>
  <preference name="FadeSplashScreenDuration" value="250"/>
  <preference name="KeyboardDisplayRequiresUserAction" value="true"/>
  <preference name="MediaPlaybackRequiresUserAction" value="false"/>
  <preference name="SuppressesIncrementalRendering" value="false"/>
  <preference name="TopActivityIndicator" value="gray"/>
  <preference name="GapBetweenPages" value="0"/>
  <preference name="PageLength" value="0"/>
  <preference name="PaginationBreakingMode" value="page"/>
  <preference name="PaginationMode" value="unpaginated"/>
  <feature name="LocalStorage">
    <param name="ios-package" value="CDVLocalStorage"/>
  </feature>
  <preference name="UIWebViewDecelerationSpeed" value="normal"/>
  <preference name="monaca:AndroidIsPackageNameSeparate" value="false"/>
  <platform name="ios">
    <preference name="orientation" value="portrait"/>
    <icon src="lobbe.png"/>
    <icon platform="ios" height="76" src="lobbe-76-76.png" width="76"/>
    <icon platform="ios" height="120" src="lobbe-120-120.png" width="120"/>
    <icon platform="ios" height="152" src="lobbe-152-152.png" width="152"/>
    <icon platform="ios" height="1024" src="lobbe-1024-1024.png" width="1024"/>
    <icon platform="ios" height="40" src="lobbe-40-40.png" width="40"/>
    <icon platform="ios" height="167" src="lobbe-167-167.png" width="167"/>
    <splash src="/res/ios/screen/Default@2x~universal~anyany.png"/>
    <preference name="WKWebViewOnly" value="true"/>
    <preference name="CordovaWebViewEngine" value="CDVWKWebViewEngine"/>
    <feature name="CDVWKWebViewEngine">
      <param name="ios-package" value="CDVWKWebViewEngine"/>
    </feature>
    <config-file platform="ios" parent="CFBundleLocalizations" target="*-Info.plist">
      <array>
        <string>tr</string>
        <string>en</string>
      </array>
    </config-file>
  </platform>
  <preference name="WindowsStorePublisherName" value="My Name"/>
  <preference name="WindowsStoreIdentityName" value="3e46a957-1e6e-2eb6-9380-b3b37c4dec02"/>
  <preference name="ios-XCBuildConfiguration-TARGETED_DEVICE_FAMILY" value="1,2"/>
  <preference name="AutoHideSplashScreen" value="true"/>
  <preference name="FadeSplashScreen" value="true"/>
  <preference name="ShowSplashScreenSpinner" value="false"/>
  <access origin="bileteviniz.com"/>
  <preference name="DisallowOverscroll" value="true"/>
  <preference name="EnableViewportScale" value="false"/>
</widget>

and this is package.json

 {
      "name": "monaca-template-minimum",
      "version": "2.0.7",
      "displayName": "Monaca Template Minimum",
      "dependencies": {
        "cordova-custom-config": "5.1.0",
        "cordova-plugin-splashscreen": "5.0.2",
        "cordova-plugin-whitelist": "1.3.3",
        "monaca-plugin-monaca-core": "3.3.0"
      },
      "scripts": {
        "monaca:preview": "npm run dev",
        "dev": "browser-sync start -s www/ --watch --port 8080 --ui-port 8081"
      },
      "cordova": {
        "plugins": {
          "cordova-plugin-whitelist": {},
          "cordova-plugin-splashscreen": {},
          "cordova-custom-config": {},
          "monaca-plugin-monaca-core": {}
        }
      },
      "devDependencies": {
        "browser-sync": "^2.26.7",
        "cordova": "^9.0.0"
      }
    }

回答1:


Your config.xml should look like this:

<platform name="ios">
    <preference name="WKWebViewOnly" value="true" />

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

    <preference name="CordovaWebViewEngine" value="CDVWKWebViewEngine" />
</platform>
<plugin name="cordova-plugin-wkwebview-engine"/>
<plugin name="cordova-plugin-inappbrowser"/>

It's possible that one of your other plugins calls UIWebView. You may need to try leaving suspect plugins out until the problem goes away, then see if there is an updated version of the plugin.

(The config.xml code above is from the VoltBuilder docs)



来源:https://stackoverflow.com/questions/62626596/itms-90809-deprecated-api-usage-new-apps-that-use-uiwebview-are-no-longer-acc

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!