Android Uninstall Tracking (1)

    提示

    卸载追踪在 Airbridge Android SDK 2.6.0 及以上版本可用。

    Attention

    为了使用Uninstall Tracking Feature,必须使用Firebase和Firebase Cloud Messaging。

    概述

    Airbridge通过Google的Firebase Messaging Service针对最近6个月内注册的设备进行应用程序是否已安装测量。
    应用卸载检测数据将通过Actuals Report、Raw Data Export接入等方式提供给客户。

    设置

    创建Firebase项目

    转到Firebase Console页面,按上图所示创建相应应用程序的项目。

    Firebase Console 페이지로 이동하여 상단의 화면과 같이 해당 앱의 프로젝트를 생성합니다.

    Firebase Cloud Messaging服务器密钥设置

    转到先前创建的项目,再转到左侧面板的项目设置页面,就可以在上图所示的位置查看服务器密钥。

    Firebase Cloud Messaging 设置

    请参考Firebase Cloud Messaging官方文档完成应用程序的基本设置。

    Firebase Push Token 发送

    请在AndroidManifest.xml中添加以下内容。

    1234567
    <service
        android:name="${packageName}.MyFirebaseMessagingService"
        android:exported="false">
        <intent-filter>
            <action android:name="com.google.firebase.MESSAGING_EVENT" />
        </intent-filter>
    </service>

    请把Firebase Cloud Messaging设置生成的Push Token通过Airbridge SDK按照如下方式传递给Airbridge。

    1234567891011
    class MyFirebaseMessagingService : FirebaseMessagingService() {
    
        override fun onMessageReceived(remoteMessage: RemoteMessage) {
            super.onMessageReceived(remoteMessage)
        }
    
        override fun onNewToken(token: String) {
            super.onNewToken(token)
            Airbridge.registerPushToken(token)
        }
    }

    之前可能已经通过Firebase Cloud Messaging Service发放了Push Token
    请添加如下设置,以便把先前创建的Push Token也传递给Airbridge。

    12345678910111213
    class MyApplication : Application() {
    
        override fun onCreate() {
            super.onCreate()
            ...
            FirebaseMessaging.getInstance()
                .token
                .addOnSuccessListener {
                    Airbridge.registerPushToken(it)
                }
            ...
        }
    }

    注意

    请确保在 Airbridge SDK 初始化操作之后调用此函数。

    应用卸载通知作为无声(Slient)通知发送,但根据Firebase Messaging Service的onMessageReceived实现,该通知也可能显示给用户。

    通过添加以下处理,确保应用卸载通知在用户端不可见。

    12345678910111213141516
    class MyFirebaseMessagingService : FirebaseMessagingService() {
    
        override fun onMessageReceived(remoteMessage: RemoteMessage) {
            super.onMessageReceived(remoteMessage)
            if (remoteMessage.data.containsKey("airbridge-uninstall-tracking")) {
                return
            } else {
                    // handleNotification(remoteMessage) 
            }
        }
    
        override fun onNewToken(token: String) {
            super.onNewToken(token)
            Airbridge.registerPushToken(token)
        }
    }

    故障排除

    Morpheus Push SDK Troubleshooting

    Morpheus Push SDK Troubleshooting guide: 预计以后提供。

    Was this page helpful?

    Have any questions or suggestions?