关于ZAKER 融媒体解决方案 合作 加入

android – Ionic Cordova 应用程序在 Google 6 月 17.

CocoaChina 09-20

在使用 Breaking Changes 更新 Firebase 主要版本后 , 我无法编译 Ionic Cordova 应用程序 , 特别是 2019 年 6 月 17 日更新 .

我尝试降级到Android Cordova 6.3.0, 但我的项目必须是 7.0.0.

这是我的离子信息:

@ionic/cli-utils : 1.19.2 ionic ( Ionic CLI ) : 3.20.0global packages: cordova ( Cordova CLI ) : 8.0.0local packages: @ionic/app-scripts : 3.2.1 Cordova Platforms : android 7.0.0 browser 5.0.4 Ionic Framework : ionic-angular 3.9.3System: Android SDK Tools : 26.1.1 Node : v8.9.1 npm : 5.5.1 OS : Windows 10Environment Variables: ANDROID_HOME : C:Developmentandroid-sdkMisc: backend : pro

这是我得到的错误:

:app:processDebugResources

C:Usersmmzep.gradlecachestransforms-1files-1.1core-1.0.0.aar73b4a83ab5e76f20c84a66b1c8444d08resvaluesvalues.xml:133:5-70: AAPT: error: resource android:attr/fontVariationSettings not found.

C:Usersmmzep.gradlecachestransforms-1files-1.1core-1.0.0.aar73b4a83ab5e76f20c84a66b1c8444d08resvaluesvalues.xml:133:5-70: AAPT: error: resource android:attr/ttcIndex not found.

C:UsersmmzepDesktopmarioSevenSevenPassengerAppplatformsandroidappbuildintermediatesincrementalmergeDebugResourcesmerged.dirvaluesvalues.xml:95:

error: resource android:attr/fontVariationSettings not found.

C:UsersmmzepDesktopmarioSevenSevenPassengerAppplatformsandroidappbuildintermediatesincrementalmergeDebugResourcesmerged.dirvaluesvalues.xml:95:

error: resource android:attr/ttcIndex not found. error: failed linking

references.

Failed to execute aapt

com.android.ide.common.process.ProcessException: Failed to execute

aapt

最佳答案

这种构建失败是由于 6 月 17 日的major version release of the Google Play Services and Firebase libaries.

新库版本具有以下要求:

Upgrade com.android.tools.build:gradle to v3.2.1 or later.

Upgrade compileSdkVersion to 28 or later.

Update your app to use Jetpack ( AndroidX )

可以通过更新使用 cordova-android@8.0.0 来解决前两个要求 .

第三个要求您的 Android 项目迁移到使用 AndroidX ( Jetpack ) .

AndroidX是广泛使用的Android Support Library的继承者 .

最新版本的 Play Services / Firebase 库和支持库现在使用的 AndroidX 被许多现有插件 ( 如cordova-plugin-firebase ) 使用 .

这两个库不能在同一个 Android 构建中并存 – 这样做会导致构建失败 .

要解决此问题 , 请在 Cordova 项目中添加以下两个插件:

> cordova-plugin-androidx在 Android 项目中启用 AndroidX.

> cordova-plugin-androidx-adapter使用支持库动态修补任何插件的源代码以使用 AndroidX 等效项 .

有关如何在测试项目中尝试此操作的工作示例 , 请参阅my comment on this Github issue.

注意:如果您使用cordova-plugin-firebase并遇到错误 , 则可以使用my fork of that plugin作为 cordova-plugin-firebasex 发布并修复以解决新 Firebase SDK 导致的问题:

rm -Rf platforms/androidcordova plugin rm cordova-plugin-firebaserm -Rf plugins/ node_modules/npm installcordova plugin add cordova-plugin-firebasexcordova platform add android

以上内容由"CocoaChina"上传发布 查看原文
相关标签 androidgooglewindows

觉得文章不错,微信扫描分享好友

扫码分享