未分類

cordovaでadmobとfirebaseのプッシュ通知が干渉してビルドできない

cordovaでfirebaseのプッシュ通知を実装した。
単体で入れるなら下記でいけた。
プラグインはか最新っぽいので下記をつかった。

https://www.npmjs.com/package/cordova-plugin-firebase-messaging#methods

cordova create source com.test.test test
cd test
cordova plugin add cordova-plugin-firebase-messaging
cordova platform add android

そして、\com.test.test\source\platforms\android\appにgoogle-services.jsonを配置する。

で、ビルド通る。

しかし、事前にcordova-plugin -admob-freeを入れていたプロジェクトだとエラーがおきた。
下記神サイトを参考にして
https://happyclam.github.io/programming/2019-06-15/firebase

\com.test.test\source\platforms\android\gradle.propertiesの
14行目と15行目にある
cordova.system.library.1=com.google.android.gms:play-services-base:11.0.4
cordova.system.library.2=com.google.android.gms:play-services-ads:11.0.4

cordova.system.library.1=com.google.android.gms:play-services-base:+
cordova.system.library.2=com.google.android.gms:play-services-ads:+
と書き換えたらうまくいった。

「Firebaseに関してネットで検索するとbuild.gradleを書き換える例が多いと思いますが、Cordovaの場合はproject.propertiesの内容で上書きされるので、project.propertiesファイルを書き換える必要があります。」
とのこと。くわしい方だなぁ。。

ABOUT ME
Masaya
テラプログラミングとは造語です。テラ=地球・陸地といった意味があるので、思い描いた理想をプログラミングで実現する=テラプログラミングと名付けています。 1987年生まれです。 職業はメーカでエンジニアをしており、それはそれで好きなのですが、好奇心と探求心、それと本当はコンプレックスのせいもあったのかもしれませんが、瞑想や心理学、いわゆる”スピリチュアル系”方面が昔から大好きです。