2016-12-23 8 views
0

を使用することができる私は、Androidアプリのためのプロジェクトを作成したときに最初に、FCMはsuccessfuly統合され、私はFCMトークンを受信することができました。しかし、私がプロジェクトにもっと多くの機能や依存関係を追加したとき、私はFCMトークンをnullにしています。私はそれがGoogleと一部の競合だと思いトークン生成されたFCMがnullでは、依存関係を持ついくつかの競合が

String refreshedToken = FirebaseInstanceId.getInstance().getToken(); 
      Log.d(TAG, "Refreshed token: " + refreshedToken); 

:後 は、依存関係の私の見解は、これは私のMyFirebaseInstanceIDService

public class MyFirebaseInstanceIDService extends FirebaseInstanceIdService { 

    private static final String TAG = "MyFirebaseIIDService"; 

    /** 
    * Called if InstanceID token is updated. This may occur if the security of 
    * the previous token had been compromised. Note that this is called when the InstanceID token 
    * is initially generated so this is where you would retrieve the token. 
    */ 
    // [START refresh_token] 
    @Override 
    public void onTokenRefresh() { 

     Log.d(TAG,"Entered MyFirebaseInstanceIDService"); 
     // Get updated InstanceID token. 
     String refreshedToken = FirebaseInstanceId.getInstance().getToken(); 
     Log.d(TAG, "Refreshed token: " + refreshedToken); 
     sendRegistrationToServer(refreshedToken); 
    } 
    // [END refresh_token] 

    private void sendRegistrationToServer(String token) { 
     // TODO: Implement this method to send token to your app server. 
    } 
} 

であり、これは私が私のFCMトークンをログに記録する方法である

dependencies { 

    compile fileTree(include: ['*.jar'], dir: 'libs') 

    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { 
     exclude group: 'com.android.support', module: 'support-annotations' 
    }) 

    compile('org.apache.httpcomponents:httpcore:4.4.1') { 
     exclude group: 'org.apache.httpcomponents', module: 'httpclient' 

    }  
    compile('com.google.api-client:google-api-client-android:1.22.0') 
    compile('com.google.apis:google-api-services-script:v1-rev6-1.22.0') { 
     exclude group: 'org.apache.httpcomponents' 
    } 

    compile 'pub.devrel:easypermissions:0.1.5' 
    compile 'com.android.support:appcompat-v7:23.4.0' 
    compile 'com.android.support:design:23.4.0' 
    compile 'com.github.markushi:circlebutton:1.1' 
    compile 'com.github.dmytrodanylyk.android-process-button:library:1.0.4' 
    compile 'cn.pedant.sweetalert:library:1.3' 
    compile 'me.spark:submitbutton:1.0.1' 
    compile 'com.android.support:support-v4:23.4.0' 
    compile 'com.google.firebase:firebase-messaging:9.8.0' 
    compile 'com.google.android.gms:play-services-auth:9.8.0' 
    compile 'com.google.android.gms:play-services-appindexing:9.8.0' 
    testCompile 'junit:junit:4.12' 
    compile files('libs/org.apache.http.legacy.jar') 
} 

を使用しています-api-client FCMとの依存関係。誰かが指摘してください、正確に何が起こっているのでしょうか?

答えて

0

FirebaseInstanceIdServiceのonTokenRefreshは、新しいトークンが生成されたときにのみ呼び出されます。あなたのアプリが以前にインストールされ、トークンが生成されていれば、onTokenRefreshは呼び出されません。新しいトークンの生成を強制するためにアプリケーションをアンインストールして再インストールすると、onTokenRefreshが呼び出されます。

ご希望の場合は問題を解決してください。ハッピーコーディング。 FCMの実装については、このリンクをご覧ください。たManifest.xmlで自分のアプリケーションタグでFireBase Cloud Messaging

+0

それは役に立ちません。私はそれを何度もやりましたが、トークンは決して生成されません。 – Sahil

0

、ちょうどツールを削除:ノードは=を「置き換え」、それが仕事を始めました。

関連する問題