Hello world!どうもAndroidエンジニアの池です。

今回Google AnalyticsからFirebase Analyticsへの移行中に困ったことが1つあったので、紹介したいと思います。

 

困った事

それはカスタムパラメータについてです。

カスタムパラメータの名称は基本的に何でも命名できると思っていたんですが、そうではないみたいです。

パラメータ名に予約語が存在しており、下記のように予約語のパラメータ名は使用できないようです。

例)メッセージの開封されたIDを知りたいという場合

・カスタムイベント名:message_detail

・カスタムパラメータ名:message_id

・送信したいパラメータ値:[メッセージのID]

という上記の形にして、Firebase Analyticsにイベントを送信されているかDebugViewで確認しますがイベント名(message_detail)は送信出来ています。

ただ、message_idというカスタムパラメータは見当たらないんですね。

Android studioのログを見てもイベント送信に関してerrorは出てないんですね。もし無効な文章とかの場合だとerrorコードが出るのですがそれもなく。

ちなみにこちらがFirebase Analyticsのエラーコード一覧になります。

https://firebase.google.com/docs/analytics/errors?hl=ja

そして、他のカスタムイベントのカスタムパラメータを確認すると送信されているんですね。

となると、もしかしてカスタムパラメータ名にも予約語があり「message_id」というパラメータ名は予約語ではないのか?と思ったのですね。

試しに、「message_ids」みたいに1語追記して確認すると送信出来てる!!

結果

そうなんです。パラメータ名にも予約語が存在しています。

確定ではないんですが、下記のURLに記載されているパラメータ名は予約語になっている可能性が高いですね。

https://support.google.com/firebase/answer/7061705?hl=ja

以上Firebase Analytics移行で困った事でした!