ソース
2020年3月1日から、PlayストアがINSTALL_REFERRERブロードキャストインテントを投げなくなる、ということのようです。
調査どころ
1. 広告SDK、計測系SDKを使っているか?
大抵のSDKは、Play Install Referrer APIへの移行が済んでいるようなので、最新版にアップデートし、各社のマイグレーション手順に従いましょう。(大手のSDKがこの移行が完了したので、停止をアナウンスできるようになったようです)
2. マニフェストファイルの確認
マニフェストファイルに下記の記述があるか確認。
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER"/>
</intent-filter>
他社製SDK等で使っている以外で、上記記述があるのであれば、Play Install Referrer APIに移行する。
自社製ライブラリなどでもよく調査して下さい。
3. GA/FAを使っている場合
現在、
「これらのアプリがINSTALL_REFERRERを使っているからAPIに変えてね」
と警告するメールが適宜Googleより届いているようです。
で、このアプリの抽出が、どうやら、
**"INSTALL_REFERRER"**だけをgrepかけて検出したアプリを抽出している
っぽいんです。
手持ちのアプリで調べたところ、1にも2にも該当しないのに、対象として挙がっているアプリがあるため、リリースされたapkをAnalyzeしてマージ後のマニフェストファイルを調べたところ、
<receiver android:enabled="true" android:exported="false" android:name="com.google.android.gms.measurement.AppMeasurementReceiver"/>
<receiver android:enabled="true" android:exported="true" android:name="com.google.android.gms.measurement.AppMeasurementInstallReferrerReceiver" android:permission="android.permission.INSTALL_PACKAGES">
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER"/>
</intent-filter>
</receiver>
という感じでほとんどのアプリに含まれていることが分かりました。
com.google.android.gms.measurement
は、GA(Google Analytics)のパッケージですが、実はFA(Firebase Analytics)もGAのパッケージに依存しています。
では、Firebaseの対応がまだなのか?実は最新版では対応済みだったりする?
ということを調べるため、2019/12/11時点で最新のFirebaseバージョンでreleaseビルドして検証してみました。
アプリを取り敢えず新規で作り、Firebaseを導入します。
implementation 'com.google.firebase:firebase-analytics:17.2.1'
※com.google.firebase:firebase-core
でも一緒です
releaseビルドして(署名ファイルは適当に用意)、Android Studioの[Build]-[Analyze APK..]で見てみると・・・
<receiver
android:name="com.google.android.gms.measurement.AppMeasurementInstallReferrerReceiver"
android:permission="android.permission.INSTALL_PACKAGES"
android:enabled="true"
android:exported="true">
<intent-filter>
<action
android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>
バッチリいます。
これは、Firebaseが対応するのを待つ必要がありそうですね。しばらくは、バージョンアップ情報を注視する必要がありそうです。
(Firebaseの対応が終わってからアナウンスして欲しかった・・・サードパーティー製のSDKの移行は待ったのに、なぜそこを待たない?? もしかして、Firebaseだけ抜け道を用意するつもりorすでに用意している、とかなのかな。対象アプリ検出ロジックのミスの方かも?)
#追記
- 2020年2月7日
https://firebase.google.com/support/release-notes/android?hl=ja#2020-01-14
firebase-analyticsのバージョンが17.2.2に上がっていますが、INSTALL_REFERRERに関する言及はないですね・・・