takek1990 日記

気張らずに考えたことや学んだことなどを書くブログ。

cordova androidと firebaseのバージョンアップで 急にビルドできなくなった。

ブログもアプリも放置してましたが久しぶりに少し手を入れようとしたらビルドエラーで半日ハマったのでメモ。

まとめ:

・現象
cordova androidのバージョンが古かったのと、
2019/6/17にgoogleがfirebaseのメジャーバージョンを変えたらしく、cordova android
プラグインcordova-plugin-firebaseでビルドできなくなった。
firebase.google.com

・解決策
https://github.com/arnesson/cordova-plugin-firebase/issues/1081
dpa99cさんのおかげで何とかなった。以下で解決。

cordova platform rm android
cordova plugin rm cordova-plugin-firebase
cordova plugin add cordova-plugin-firebasex
cordova plugin add cordova-plugin-androidx-adapter
cordova platform add android@8.0.0

以下詳細(ハマった手順)

いつものように

cordova run android

したら長々とエラーが出てきて、よく見たら以下のようなエラーがあった。
他にもaapt2のエラーと書かれてた気がする。

resource android:attr/ttcIndex not found. 
resource android:attr/fontVariationSettings not found.

早速ググると、SDKのバージョンを28にするように書かれている。それか27で無理やり頑張るか。
error: resource android:attr/fontVariationSettings not found - Stack Overflow

build.gradleを編集するなどしてどちらも試したが駄目だった。


◇cordova androidのバージョンアップ問題
cordova android のバージョンが古いのでは?と思って調べてみると自分のは7.11だったが
8.00が出ている模様。ここでSDK28がサポートされるようになった?っぽい。
Cordova Android 8.0.0 Released! - Apache Cordova
とりあえず入れた。

◇firebaseの問題
すると今度はfirebase絡みのエラーが発生。
色々サイトを回った挙句、firebaseのバージョンアップの情報に行きついた。
https://github.com/arnesson/cordova-plugin-firebase/issues/1081

ちなみにこんな感じのエラーが出てた。

Task :app:fabricGenerateResourcesDebug FAILED
ERROR - Crashlytics Developer Tools error.
java.lang.IllegalArgumentException: Crashlytics found an invalid API key: null.
Check the Crashlytics plugin to make sure that the application has been added successfully!
とか
What went wrong:
Execution failed for task ':app:compileDebugJavaWithJavac'. 
とか


疲れた。今後ゆっくり更新していきたい。