cordova-plugin-cameraで以下のエラーが出た。
Attempt to invoke virtual method ‘boolean java.io.File.mkdirs()’ on a null object reference
cordovaカメラプラグインを使って写真を撮ろうとした瞬間にクラッシュします。
これはandroidXパッケージを導入する際にimportのandroid.supportv.4・・・を削除していたのが
問題でした。
代わりにandroidXを入れて無理に動かそうとしていたので、サポートライブラリで使えていた機能が
抜け落ちるので当然といえば当然でしたね。これは致命的でした・・・。
そもそもサポートライブラリありきのアプリにこのような突貫工事はご法度です。
なので、cordova platforms rm androidでプラットフォームを削除→cordova platforms add androidで
再度インストール。
直後にfirebaseの依存関係のエラーがでたのでcom.google.firebase:firebase-core+をcom.google.firebase:firebase-core:16.0.8
にして更新。(最新のバージョンを持ってくるので予期せぬエラーが起きるとのこと。)
ちなみにこの時の自分のcordovaのバージョンは9.0.0。このバージョンだとまだ未更新のエラーが
起きるので会社の先輩のバージョン8.1.2に合わせてビルド。
無事アプリが起動。
半年前の自分を小一時間問い詰めたい。
今回の反省点
・最新版=万能ではない。
・サポートライブラリをむやみにandroidXに変更しない。するとしてもアプリに入っているプラグインの機能を確認しながら
作業をする。