2016-04-13 20 views
0

Android için push bildirimi üzerinde çalışıyorum. her şey iyi çalışıyordu ama aniden gcm id (gcm token) sıfır olarak döndürülüyor ... projeyi kaydettirmeli ve here numaralı yeni bir proje kimliği almalı mıyım yoksa bir yerlere yanlış gidiyorum. i this aşağıda GCM kaydı bir zaman uyumsuz bir olaydır ve yok olduğunu fark etmek örnek kod boş bir kayıt kimliği iade ediliyor tam olarak nerede emin değilim, ama, önemli değilokhttp gönderi talebi başarılı değil

@Override 
    protected void onHandleIntent(Intent intent) { 
    sharedPrefs = PreferenceManager.getDefaultSharedPreferences(this); 
    InstanceID instanceID = InstanceID.getInstance(this); 
    senderId = getResources().getString(R.string.google_app_id); 

     try { 
     token = instanceID.getToken(senderId,GoogleCloudMessaging.INSTANCE_ID_SCOPE,null); 
     Log.d("register_Token: ", token); 

     sendRegistrationToServer(token); 

    } catch (IOException e) { 
     e.printStackTrace(); 
     sharedPrefs.edit().putBoolean(QuickstartPreferences, false).apply(); 
    } 



} 

cevap

0

Im denedi beni eğitmek lütfen hemen gerçekleşir. Bundan sonra GCMRegistrar.getRegistrationId(this); numaralı telefonu arayarak kayıt kimliğini sadece boş bir dize vermeyecektir. Düzgün kayıt kimliği almak için

cihazınız size GCMBaseIntentService aşağıdaki geri arama işlemek gerekir GCM sunucularla kaydolduktan sonra: Eğer kayıt numarası alacak nereye

protected void onRegistered(Context context, String registrationId)

olduğunu That ve uygulama sunucunuza kayıt olmanız gereken yer.

@Override 
protected void onRegistered(Context context, String registrationId) { 
Log.i(TAG, "Device registered: regId = " + registrationId); 
displayMessage(context, getString(R.string.gcm_registered, 
registrationId)); 
ServerUtilities.register(context, registrationId); 
}