18

我最近开始为 Android 开发,在我的应用程序中尝试使用谷歌地图时遇到了麻烦。我下载了适用于 Android 的 Google Maps API v2,并且已经根据 Google Developers Site 执行了所有必需的步骤。

我的问题是,虽然应用程序运行,但在应该显示地图的地方有一条文字说我的设备缺少 Google Play 服务。

我已经从 SDK 下载了 Google Play 服务,将库导入到我的项目中,还导入了 .JAR 文件。

我使用的是 Netbeans,而不是 Eclipse,所以我在网上找到的许多解决方案对我没有用。我希望你能帮我解决这个问题。

4

7 回答 7

13

遗憾的是,您不能使用模拟器运行使用 Google Play 服务的应用程序。来自http://developer.android.com/google/play-services/setup.html“Android 模拟器不支持 Google Play 服务 - 要使用 API 进行开发,您需要提供开发设备,例如 Android手机或平板电脑。”

于 2013-01-01T23:27:56.670 回答
12

来自谷歌自己的网站http://developer.android.com/google/play-services/setup.html

如果您想在模拟器上测试您的应用程序,请展开 Android 4.2.2 (API 17) 或更高版本的目录,选择 Google APIs,然后安装它。然后创建一个以 Google API 作为平台目标的新 AVD。注意:只有 Android 4.2.2 及更高版本的 Google API 平台包含 Google Play 服务。

于 2013-07-17T12:06:48.617 回答
4

我遇到了同样的问题并找到了解决方案

这里是更新的gmsvending文件。与以前相同的说明:使用任何 cpu/abi、非 google-api 目标(版本 10-17 工作)和 gpu 仿真打开或关闭创建一个新模拟器,然后安装文件:

adb install com.android.vending-20130716.apk 
adb install com.google.android.gms-20130716.apk 

如果您要升级现有的模拟器,那么您可能需要通过以下方式卸载以前的版本:

adb uninstall com.android.vending
adb uninstall com.google.android.gms
于 2013-08-13T22:38:46.543 回答
1

波纹管链接包含适用于 Android 4.2.2 或更高版本的解决方案

如何在 Android 模拟器中安装 Google Play 服务

1.1 启动你的模拟器。断开任何其他 Android 设备(例如您的智能手机)与计算机的连接。1.2 下载这两个文件

com.android.vending-19032013.apk:http ://www.mediafire.com/download.php? 7jfar2v1bzx6v59 com.google.android.gms-19032013.apk:http ://www.mediafire.com/download.php ?4o9fz413uavlblf

1.3 打开命令控制台,进入\platform-tools

用命令安装上面的两个文件

adb install \com.android.vending-19032013.apk adb install \com.google.android.gms-19032013.apk

于 2015-10-02T09:05:51.350 回答
0

是的,您可以在模拟器上使用 Google 地图。但是,它不受官方支持,因此需要一些工作。按照此链接上的信息,我取得了最大的成功。

于 2013-02-21T12:41:06.717 回答
0

我找到了这个,希望对你有帮助;)

在 Android 模拟器上安装 Google Play

在您的模拟器中运行 Google Play 服务

于 2013-06-20T09:28:10.807 回答
0

如果有人仍然遇到此问题,请首先尝试使用 Google API 作为平台目标来创建您的模拟器。这样做之后,我注意到我的 Google Play 服务不是模拟器上的正确版本。

在尝试破解解决方案时,我偶然发现了这里GoogleApiAvailability的课程。谷歌在处理兼容性问题方面做得非常出色。

GoogleApiAvailability.isGooglePlayServicesAvailable(Context)返回一个整数状态码,可以直接输入getErrorDialog(Activity, errorCode, requestCode)它返回一个Dialog开箱即用的完美工作。如果您的 Play 服务已过期,该对话框会将您重定向到更新程序...如果它们丢失,它会将您重定向到安装程序等...

我想我会分享这个很棒的功能,以防有人正在寻找可以在生产代码和测试中工作的修复程序。

于 2016-07-08T02:21:23.127 回答