cordova - 为 Android SDK Platform 30 构建 ionic cordova 应用程序
问题描述
Android Play Store 要求我针对新版本的 API 级别 30,但目前似乎不支持开箱即用。
我尝试构建默认的 ionic cordova 应用程序:
ionic start MyApp sidemenu --cordova
...并选择 Angular
然后我将 SDK 目标添加到 confix.xml:<preference name="android-targetSdkVersion" value="30" />
到 config.xml
...删除白名单插件,因为 API 级别 30 不需要它:cordova plugin remove cordova-plugin-whitelist
...并添加 android 平台:ionic cordova platform add android@10.1.1
当我构建它时:ionic cordova build android
我收到以下错误:
> Task :CordovaLib:compileDebugJavaWithJavac
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
> Task :app:compileDebugJavaWithJavac FAILED
C:\Projects\a10\platforms\android\app\src\main\java\com\ionicframework\cordova\webview\IonicWebViewEngine.java:11: error: package android.support.annotation does not exist
import android.support.annotation.RequiresApi;
^
C:\Projects\a10\platforms\android\app\src\main\java\com\ionicframework\cordova\webview\IonicWebViewEngine.java:137: error: cannot find symbol
@RequiresApi(Build.VERSION_CODES.LOLLIPOP)
^
symbol: class RequiresApi
location: class com.ionicframework.cordova.webview.IonicWebViewEngine.ServerClient
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
2 errors
这是存储库:https ://github.com/geleto/a10 ...这是离子信息:
Ionic:
Ionic CLI : 6.17.1 (C:\Users\gelet\AppData\Roaming\npm\node_modules\@ionic\cli)
Ionic Framework : @ionic/angular 5.8.0
@angular-devkit/build-angular : 12.1.4
@angular-devkit/schematics : 12.1.4
@angular/cli : 12.1.4
@ionic/angular-toolkit : 4.0.0
Cordova:
Cordova CLI : 10.0.0
Cordova Platforms : 6.0.0, android 10.1.1, browser
Cordova Plugins : cordova-plugin-ionic-keyboard 2.2.0, cordova-plugin-ionic-webview 4.2.1, (and 3 other plugins)
Utility:
cordova-res : not installed globally
native-run : not installed globally
System:
Android SDK Tools : 26.1.1 (C:\Users\gelet\AppData\Local\Android\Sdk)
NodeJS : v14.17.5 (C:\Program Files\nodejs\node.exe)
npm : 6.14.14
OS : Windows 10
解决方案
<preference name="AndroidXEnabled" value="true" />
设法通过添加到 config.xml 并安装 cordova-plugin-androidx-adapter来构建它
推荐阅读
- google-maps - 如何在颤振中与谷歌地图集成?
- javascript - UnhandledPromiseRejectionWarning: Error: ENOENT: no such file or directory, stat '/assets/level.png'
- protractor - Protractor - slow clicking on elements
- python - how to sort a list in python by two arguments
- python - Pandas iterrows can't skip row during iteration if condition met
- javascript - 你如何从 fabricjs 画布对象中获取 id?
- java - Eclipse plugin to remove validation from existing editor
- html - Submenus of a Dropdown menu appear when i hover via another dropdown menu
- css - Setting transition time of slider navigation arrows
- nginx - Streaming from obs to Nginx