Android FCM registerToken函数未运行

时间:2016-10-25 06:07:39

标签: android logging

日志显示直到“刷新令牌:......”,记录“发送0”,其余部分根本不显示...意味着registerToken()根本没有运行但是怎么回事?< / p>

@Override
public void onTokenRefresh(){
    String token = FirebaseInstanceId.getInstance().getToken();
    registerToken(token);
    Log.v("myApp", "token is " + token);
    Log.v("myApp","Refreshed token: " + token);
}

private void registerToken(String token) {
    Log.v("myApp","send out 0");
    OkHttpClient client = new OkHttpClient();
    RequestBody body = new FormBody.Builder()
            .add("Token",token)
            .build();
    Log.d("myApp","send out 1");
    Request request = new Request.Builder()
            .url("http://server.com/register.php")
            .post(body)
            .build();
    Log.d("myApp","send out 2");
    try {
        client.newCall(request).execute();
        Log.d("myApp","send out succ");
    } catch(IOException e){
        e.printStackTrace();
        Log.d("myApp","send out failed");
    }
}

1 个答案:

答案 0 :(得分:1)

检查您是否在firebase控制台中注册了您的应用

为了获得注册令牌,只需在您的活动或片段中添加以下代码

 String deviceGCMToken = FirebaseInstanceId.getInstance().getToken();

现在您可以实施webservice以将注册令牌发送到服务器