0

我爲我的應用使用Firebase身份驗證,在某些設備中它會引發錯誤,我的Firebase依賴關係爲9.6.1。除非您在真實設備上更新Google Play服務錯誤,否則應用程序無法運行

:我可以對此做些什麼嗎?

:onComplete永遠不會被調用,所以我不知道如果用戶不支持這個,我怎麼能處理它?

:有很多設備的谷歌播放服務的版本低於那個?

感謝

+0

那麼,什麼是從谷歌升級Play服務,阻止你? –

+0

什麼都沒有,我可以在我的手機上更新它,但不在用戶手機中 –

+0

然後,這聽起來像是一個用戶問題。如果他們想要使用您的應用,他們必須升級 –

回答

2

在應用程序初始化期間,您的代碼應該調用GoogleApiAvailability.makeGooglePlayServicesAvailable()。被調用的處理:

嘗試在此設備上使用Google Play服務。如果 播放服務已經可用,則返回的任務可以立即完成 。

如果爲了完成此請求而需要顯示UI (例如,將用戶發送到Google Play商店),傳遞的活動 將用於顯示此UI。

建議從onCreate(Bundle)調用此方法。如果 傳遞Activity在返回的任務完成之前完成,則任務 將失敗並顯示CancellationException。

例在主要活動中的onCreate()使用:

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    GoogleApiAvailability.getInstance().makeGooglePlayServicesAvailable(this) 
     .addOnCompleteListener(this, new OnCompleteListener<Void>() { 
      @Override 
      public void onComplete(@NonNull Task<Void> task) { 
       if (task.isSuccessful()) { 
        Log.d(TAG, "onComplete: Play Services OKAY"); 
       } else { 
        // Show the user some UI explaining that the needed version 
        // of Play Services could not be installed and the app can't run. 
       } 
      } 
    }); 

    ... 
} 
0

我建議降低谷歌播放你在你的應用程序中使用服務版本:除非您特別需要的東西在遊戲服務的更高版本?它不應該爲您的應用程序造成問題,但應該解決用戶需要更新的問題。

+0

我應該通過降低Firebase版本來實現嗎? –

相關問題