アンインストール計測
概要
AppsFlyer SDKとFirebase Cloud Messagingを使用して、Androidアプリのアンインストール計測を実装します。
Androidアプリのアンインストール計測実装
このドキュメントでは、次のシナリオでのアンインストール計測の実装について説明します:
- 既にFCMを使用しているアプリ
- FCMを使用しないアプリ
最新のFCMクライアントバージョンは こちらで確認できます。
Apps using FCM
既存のFCM連携にアンインストール計測を追加するには:
in the onNewToken()
override, invoke updateServerUninstallToken
:
@Override
public void onNewToken(String s) {
super.onNewToken(s);
// Sending new token to AppsFlyer
AppsFlyerLib.getInstance().updateServerUninstallToken(getApplicationContext(), s);
// the rest of the code that makes use of the token goes in this method as well
}
Apps not using FCM
アンインストール計測の連携:
- ダウンロード
google-services.json
from Firebase console. - Add the
google-services.json
to the app module directory - Add the following dependencies to your root-level
build.gradle
file:buildscript { // ... dependencies { // ... classpath 'com.google.gms:google-services:4.2.0' // google-services plugin } }
- In the app-level
build.gradle
, add the following dependencies:注意: ”Could not find method implementation()..." エラーを受信した場合は、Android SDKマネージャーに最新のGoogleリポジトリがあることを確認してください。dependencies { // ... implementation 'com.google.firebase:firebase-messaging:23.0.3' implementation 'com.google.firebase:firebase-core:20.1.2' // ... }
- If you use FCM only to measure uninstalls in AppsFlyer, use
appsFlyer.FirebaseMessagingServiceListener
service, embedded in the SDK. This extends theFirebaseMessagingService
class, used to receive the FCM Device Token and callsupdateServerUninstallToken
. To addappsFlyer.FirebaseMessagingServiceListener
service to the app:Otherwise, override the<application <!-- ... --> <service android:name="com.appsflyer.FirebaseMessagingServiceListener"> <intent-filter> <action android:name="com.google.firebase.MESSAGING_EVENT"/> </intent-filter> </service> <!-- ... --> </application>
FirebaseMessagingService.onNewToken()
method and callupdateServerUninstallToken
:@Override public void onNewToken(String s) { super.onNewToken(s); // Sending new token to AppsFlyer AppsFlyerLib.getInstance().updateServerUninstallToken(getApplicationContext(), s); // the rest of the code that makes use of the token goes in this method as well }
注意
Proguardを使用する場合は、次のルールを必ず追加してください:
-dontwarn com.appsflyer.** -keep public class com.google.firebase.messaging.FirebaseMessagingService { public *; }
Androidアンインストール計測のテスト
ここで説明しているテスト方法は、Google Play Storeで利用できるアプリ、承認待ち、直接ダウンロード、および代替アプリストアで有効です。
- アンインストール指標はオーバービュー管理画面で確認できます。
- アプリをアンインストールしたユーザーのリストは、アンインストールローデータレポート で確認できます。
(https://support.appsflyer.com/hc/ja/articles/209680773-%E3%83%AD%E3%83%BC%E3%83%87%E3%83%BC%E3%82%BF%E3%83%AC%E3%83%9D%E3%83%BC%E3%83%88%E3%81%AE%E6%A6%82%E8%A6%81#ユーザージャーニーレポートの可用性)
Androidアンインストール計測のテスト方法:
- アプリをインストールします。
- アプリをアンインストールします。 アプリをインストールした直後にアンインストールできます。
- アンインストールデータがAppsFlyer管理画面に表示されるのを待ちます。これには最大48時間かかることがあります。
注意事項
- アンインストール計測は毎日デイリーで処理されるため、アンインストールイベントは24時間以内に登録されます。
- この間にアプリが再インストールされた場合、 アンインストールイベントは記録されません。
FCMのオーバーライド: onMessageReceived
onMessageReceived
FCMのオーバーライド: onMessageReceived
method and implementing your own logic
in it might cause uninstall push notifications to not be silent. This can impact the user experience. To prevent this, verify that the message contains af-uinstall-tracking
. See the following example:
@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
if(remoteMessage.getData().containsKey("af-uinstall-tracking")){ // "uinstall" is not a typo
return;
} else {
// handleNotification(remoteMessage);
}
}
更新済 8か月前