Aşağıdaki örnekler, Android'de örnek kimliğini uygulamanıza yardımcı olur gerekir. Bu örneklerde, yalnızca kullanışlı olan GCM kapsamının kullanıldığına dikkat edin. yalnızca örnek olarak verilebilir. Google Cloud Messaging, kullanımdan kaldırıldı.
Google Play Hizmetleri'ni kurun
İstemci uygulamanızı yazmak için Google Play Hizmetleri SDK'sını kullanın. açıklandığı şekilde Google Play'i Hizmetler SDK'sı. Play Hizmetleri Kitaplığı, Örnek Kimliği kitaplığını içerir.
Örnek Kimliği Alma
Aşağıdaki kod satırı bir Örnek Kimliği döndürür:
String iid = InstanceID.getInstance(context).getId();
Jeton oluştur
Jeton oluşturmak için Google Developers Console.
String authorizedEntity = PROJECT_ID; // Project id from Google Developer Console
String scope = "GCM"; // e.g. communicating using GCM, but you can use any
// URL-safe characters up to a maximum of 1000, or
// you can also leave it blank.
String token = InstanceID.getInstance(context).getToken(authorizedEntity,scope);
Jetonları ve örnek kimliklerini yönetme
Örnek kimliği, jetonları silmenize ve yenilemenize olanak tanır.
Jetonları ve örnek kimliklerini silme
String authorizedEntity = PROJECT_ID;
String scope = "GCM";
InstanceID.getInstance(context).deleteToken(authorizedEntity,scope);
Ayrıca, ilişkili tüm etkinlikler de dahil olmak üzere örnek kimliğini silebilirsiniz.
jeton. getInstance()
adlı bir sonraki aramanızda yeni bir
Örnek kimliği:
InstanceID.getInstance(context).deleteInstanceID();
String newIID = InstanceID.getInstance(context).getId();
.
Jetonları yenile
Örnek Kimliği hizmeti, düzenli olarak geri çağırma işlemleri başlatır (örneğin, her 6 ayda bir) olmak üzere uygulamanızın jetonlarını yenilemesini isteme. Ayrıca Şu durumlarda geri çağırma başlatılır:
- Güvenlik sorunları var, Örneğin, SSL veya platform sorunları.
- Cihaz bilgileri artık geçerli değil; örneğin, yedekleme ve geri yükleme.
- Aksi takdirde Örnek Kimliği hizmeti etkilenir.
Bunları almak için uygulamanızda Örnek Kimliği dinleyici hizmetini kullanın geri aramalar:
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
}
}
};
Bu hizmeti projenin Manifest dosyasında da yapılandırmanız gerekir:
<service android:name=".MyInstanceIDService" android:exported="false">
<intent-filter>
<action android:name="com.google.android.gms.iid.InstanceID"/>
</intent-filter>
</service>