2016-12-10 17 views
6
Ben bir deneme/yakalama bloğu kullanmak

FirebaseInstanceId.getInstance() nasıl kullanılır deleteInstanceId()?

FirebaseInstanceId.getInstance().deleteInstanceId() 

ile benim FireBaseInstance silmek istediğiniz

ama whis hatayı alıyorum: benim kötü İngiliz cevaplar için

> W/System.err: java.io.IOException: MAIN_THREAD W/System.err:  at 
> com.google.firebase.iid.zzd.zzb(Unknown Source) W/System.err:  at 
> com.google.firebase.iid.FirebaseInstanceId.deleteInstanceId(Unknown 
> Source) W/System.err:  at 
> package.class.onCreate(DatenLadenActivity.java:57) 
> W/System.err:  at 
> android.app.Activity.performCreate(Activity.java:6272) W/System.err: 
> at 
> android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107) 
> W/System.err:  at 
> android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2387) 
> W/System.err:  at 
> android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2494) 
> W/System.err:  at 
> android.app.ActivityThread.access$900(ActivityThread.java:157) 
> W/System.err:  at 
> android.app.ActivityThread$H.handleMessage(ActivityThread.java:1356) 
> W/System.err:  at 
> android.os.Handler.dispatchMessage(Handler.java:102) W/System.err:  
> at android.os.Looper.loop(Looper.java:148) W/System.err:  at 
> android.app.ActivityThread.main(ActivityThread.java:5525) 
> W/System.err:  at java.lang.reflect.Method.invoke(Native Method) 
> W/System.err:  at 
> com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:730) 
> W/System.err:  at 
> com.android.internal.os.ZygoteInit.main(ZygoteInit.java:620) 

Teşekkür ve üzgün :)

+0

Yani neden InstanceID silmek isteyeyim öğrenebilir miyim? –

+0

Uzun bir hikaye ... Kodumdaki bir şey yanlıştı ve MY Device FireBaseToken = null'dan sonra. Hata buluyorum ve şimdi Emulators'da çalışıyor ancak cihazımda FireBaseToken hala boş. Yani FirebaseInstanceId.getInstance(). DeleteInstanceId() ile sıfırlamak istiyorum ama bunu kullanmak için bilmiyorum. Cevabınız için teşekkürler :) – Johannes

+0

Cihazımda onTokenRefresh() başlama ... – Johannes

cevap

19

deleteInstanceId() engellenen bir arama. Ana iş parçacığına çağrılmaz. Yalnızca geliştirme ve test için onu aramak gerekiyorsa, kullanabileceğiniz basit Thread:

  new Thread(new Runnable() { 
       @Override 
       public void run() { 
        try { 
         FirebaseInstanceId.getInstance().deleteInstanceId(); 
        } catch (IOException e) { 
         e.printStackTrace(); 
        } 
       } 
      }).start(); 
+0

Çok teşekkürler. Şimdi çalışıyor. :) – Johannes