2016-06-22 4 views

Antwort

0

Sie einen Service erstellen können, die InstanceIDListenerService#onTokenRefresh() zu wissen implementiert, wenn neue Registrierungs-Token anzufordern.

public class MyInstanceIDService extends InstanceIDListenerService { 
    public void onTokenRefresh() { 
    refreshAllTokens(); 
    } 

    private void refreshAllTokens() { 
    // assuming you have defined TokenList as 
    // some generalized store for your tokens 
    ArrayList<TokenList> tokenList = TokensList.get(); 
    InstanceID iid = InstanceID.getInstance(this); 
    for(tokenItem : tokenList) { 
     tokenItem.token = 
     iid.getToken(tokenItem.authorizedEntity,tokenItem.scope,tokenItem.options); 
     // send this tokenItem.token to your server 
    } 
    } 
}; 

Dann wird Ihr Service für Ihre AndroidManifest.xml hinzufügen:

<service android:name=".MyInstanceIDService" android:exported="false"> 
    <intent-filter> 
     <action android:name="com.google.android.gms.iid.InstanceID"/> 
    </intent-filter> 
</service> 

Quelle: https://developers.google.com/instance-id/guides/android-implementation#refresh_tokens

0

Wenn Sie einen Blick auf die neue Firebase Cloud Messaging nehmen, Sie müssen nichts registrieren es macht es automatisch für dich. Aber aus meiner Erfahrung mit GCM habe ich mich immer registriert, wenn sich der Benutzer manuell anmeldet, weil er sich möglicherweise von einem anderen Gerät aus anmeldet, und deshalb müssen Sie dieses Gerät registrieren, damit es Push-Benachrichtigungen erhält.

Verwandte Themen