繁体   English   中英

FCM - 永远不会调用onTokenRefresh()

[英]FCM - onTokenRefresh() is never called

我已按照Firebase云消息传递中提到的设置过程进行操作。 但不知怎的onTokenRefresh永远不会被调用。

以下是这方面的变化:

app的build.gradle:

dependencies {
    ...
    compile 'com.google.firebase:firebase-messaging:9.4.0'
}

apply plugin: 'com.google.gms.google-services'

project的build.gradle:

dependencies {
    classpath 'com.android.tools.build:gradle:2.1.2'
    classpath 'com.google.gms:google-services:3.0.0'
}

AndroidManifest.xml中

<application
    ...
    <service
        android:name="com.blynq.app.services.MyFirebaseMessagingService">
        <intent-filter>
            <action android:name="com.google.firebase.MESSAGING_EVENT"/>
        </intent-filter>
    </service>

    <service
        android:name="com.blynq.app.services.MyFirebaseInstanceIDService">
        <intent-filter>
            <action android:name="com.google.firebase.INSTANCE_ID_EVENT"/>
        </intent-filter>
    </service>

</application>


public class MyFirebaseInstanceIDService extends FirebaseInstanceIdService {

    @Override
    public void onTokenRefresh() {
        String token = FirebaseInstanceId.getInstance().getToken();
        Log.i("FCM", "Token refreshed - " + token);
        registerTokenWithServer(token);
    }
}

记录状态I/FirebaseInitProvider: FirebaseApp initialization successful ,但是不执行onTokenRefresh()。

我肯定错过了什么,但无法理解在哪里。

编辑:只有模拟器发生,Android设备与上述设置工作正常。

FCM客户端要求安装了Android 2.3或更高版本且安装了Google Play商店应用的设备,或运行带有Google API的Android 2.3的模拟器。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM