Android 虚拟机:双重错误:“未安装 Google Play 游戏”
Posted
技术标签:
【中文标题】Android 虚拟机:双重错误:“未安装 Google Play 游戏”【英文标题】:Android Virtual Machine: Double Error: "Google Play Games not installed" 【发布时间】:2016-10-09 03:39:02 【问题描述】:我现在正在创建一个游戏并尝试实现 Google Play Games SignIn。 我的问题是(我认为是)Google Play 游戏没有正确安装在虚拟机上。如果我启动应用程序,它会给我“未安装 Google Play 游戏”的响应(参见图片)。如果您单击“安装”或“取消”按钮,它将再次打开同一屏幕。我不知道为什么。没有显示错误。
Link to the Error Image
这是连接到登录系统的全部代码:
@Override
public void onConnectionFailed(ConnectionResult connectionResult)
Log.d(TAG, "Connection Failed");
if (mResolvingConnectionFailure)
// Already resolving
return;
// If the sign in button was clicked or if auto sign-in is enabled,
// launch the sign-in flow
if (mSignInClicked || mAutoStartSignInFlow)
mAutoStartSignInFlow = false;
mSignInClicked = false;
mResolvingConnectionFailure = true;
// Attempt to resolve the connection failure using BaseGameUtils.
// The R.string.signin_other_error value should reference a generic
// error string in your strings.xml file, such as "There was
// an issue with sign in, please try again later."
if (!BaseGameUtils.resolveConnectionFailure(this,
mGoogleApiClient, connectionResult,
RC_SIGN_IN, getResources().getString(R.string.signin_other_error)))
mResolvingConnectionFailure = false;
// Put code here to display the sign-in button
public void onGoogleClick(View view)
mSignInClicked = true;
mGoogleApiClient.connect();
@Override
public void onConnected(Bundle connectionHint)
// show sign-out button, hide the sign-in button
findViewById(R.id.sign_in_button).setVisibility(View.GONE);
Log.d(TAG, "Connected");
Games.Achievements.unlock(mGoogleApiClient, getResources().getString(R.string.ach_lvl3));
// (your code here: update UI, enable functionality that depends on sign in, etc)
@Override
public void onConnectionSuspended(int i)
Log.d(TAG, "Connection Suspended");
以及 GoogleApiClient 声明
mGoogleApiClient = new GoogleApiClient.Builder(this)
.enableAutoManage(this, this)
.addConnectionCallbacks(this)
.addOnConnectionFailedListener(this)
.addApi(Games.API).addScope(Games.SCOPE_GAMES)
.build();
【问题讨论】:
【参考方案1】:根据所附图片,Google Play 服务应用程序可能已过时。您只需要更新应用即可。
转到 Google Play 并下载 Google Play services。希望对您有所帮助。
【讨论】:
唯一的问题是没有办法在avm上下载apk 查看此SO thread for that,了解如何将 Google Play 安装到模拟器。【参考方案2】:查看Google Page on the topic
简短版:
确保在 AVD 管理器中更新某些 Google API 为 AVD 选择“Google APIs x86 版本 NN”(NN 是您的目标)。不久前为我修复了地图——还有一些其他的小问题。问题是并非每个图像都安装了 Play 商店和/或特定的 Goog API,因此它们失败了。使用 Google API 可以确保两者都存在。
HTH
【讨论】:
我只能找到包含 Google Play API 的 android 版本。看起来他们没有更新,但在我的 SDK 管理器中一切似乎都正常【参考方案3】:好吧,结合其他想法。
-
在“Android SDK 管理器”中重新安装 Google API(在附加项下列出)。我不希望这能解决你的问题,只是覆盖基地。
我从未尝试过,但很多知识渊博的人推荐 Genymotion 作为调试的替代方案 - 虽然最近听起来 Play 服务已从他们的 AVD 中删除,says 他们仍然支持 play。
希望你能尽快完成。
【讨论】:
以上是关于Android 虚拟机:双重错误:“未安装 Google Play 游戏”的主要内容,如果未能解决你的问题,请参考以下文章
Android Studio 虚拟机运行错误(The ADB binary found at XX is obsolete and ...)索性换成真机调试