
问题是这些模拟器使用旧版Play服务.
当我运行使用Firebase以促进Google登录的测试应用时,我从Nexus 5 API 23仿真器获取此警报对话框:

在我的登录活动的onCreate方法中,我有以下代码:
int result = GooglePlayServicesUtil.isGooglePlayServicesAvailable(this);
switch(result) {
case ConnectionResult.SERVICE_VERSION_UPDATE_REQUIRED:
Log.d(TAG,"SERVICE_VERSION_UPDATE_REQUIRED");
break;
case ConnectionResult.SUCCESS:
Log.d(TAG, "Play service available success");
break;
default:
Log.d(TAG, "unknown services result: " + result);
}
这总是返回SERVICE_VERSION_UPDATE_REQUIRED.
单击警报对话框中的更新不会检测到任何内容.在调试日志中,我在Play服务启动失败时收到此消息:
W/GooglePlayServicesUtil: Google Play services out of date. Requires 9080000 but found 8489470
我的应用程序在真正的Android设备上运行良好.
我错过了什么简单的事情?
TIA
W/GooglePlayServicesUtil: Google Play services out of date. Requires 1008400 but found 9874900
W/FA: Service connection failed: ConnectionResult{statusCode=SERVICE_VERSION_UPDATE_REQUIRED, resolution=null, message=null}
我已经广泛搜索了一种在我的模拟器上更新Google Play服务的方法,而且建议的内容从未奏效.最后,我尝试创建一个新的模拟器Nexus 5 x86_64和API 24. Voila !!!它有Google Play Services 10.0.1,我的应用程序现在正常运行.
它真的很让我失望,为什么x86图像没有最新的Google Play Serviecs,它不允许我以任何方式更新它,而x86_64图像有最新的Google Play服务.
希望这可以帮助有人在使用Google Play服务.
转载注明原文:如何更新适用于Android Studio 2.2模拟器的Google Play服务? - 乐贴网