我正在为我的应用程序使用 Firebase 身份验证,在某些设备中它会抛出该错误,我的 firebase 依赖项是 9.6.1。
1:我能对此做些什么吗?
2:onComplete永远不会被调用,所以我无法知道用户是否不支持它,我该如何处理它?
3:是否有很多设备的谷歌播放服务版本低于此版本?
谢谢
在应用初始化期间,您的代码应调用 GoogleApiAvailability.makeGooglePlayServicesAvailable((。调用的处理:
尝试在此设备上提供 Google Play 服务。如果 Play 服务已可用,返回的任务可能会完成 马上。
如果需要显示 UI 才能完成此请求 (例如,将用户引导至 Google Play 商店(传递的活动 将用于显示此 UI。
建议从onCreate(Bundle(调用此方法。如果 传递的活动在返回的任务完成之前完成,任务 将失败并显示取消异常。
在主活动的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.
}
}
});
...
}
我建议您降低您在应用中使用的Google Play服务版本:除非您在更高版本的Play服务中特别需要某些内容?它应该不会给你的应用带来问题,但应该可以解决需要更新的用户的问题。