如何在intel x86仿真器上使用GCM

时间:2013-02-15 03:31:43

标签: android android-emulator

我正在使用x86英特尔Android模拟器开发Android应用程序。

但是当我使用google croud messaging API时,发生了错误。

java.lang.UnsupportedOperationException: Device does not have package com.google.android.gsf

如果使用Google APis的开关模拟器,错误很明显。但是很慢......

我搜索了同样的情况,我找到了Google地图API。

How to create avd with google api for Intel x86 atom image?

http://38911bytes.blogspot.de/2012/03/how-to-use-google-maps-api-in-android.html

但这些文章只是谷歌地图问题,不适用于GCM API。

有解决方案吗?

3 个答案:

答案 0 :(得分:5)

我建议您使用AndroVM

AndroVM http://androvm.org/wp-uploads/2012/09/logo-androvm-final1.jpg

它实际上是VirtualBox的x86 Android VM映像(使用Google API),您可以在其中部署&有效地测试您的应用。在我看来,它与真正的Android设备一样快,并且在开发Android应用程序时提高了我的工作效率。

要设置AndroVM,您可以查看我认为非常清楚的官方documentation

您可以从download page抓取您的虚拟机镜像,不要忘记下载带有gapps&的霍迪尼

我刚刚检查了我的安装,并在/ system / app下找到了GoogleServicesFramework.apk。所以它应该满足你的需要。

答案 1 :(得分:1)

您现在可以使用Genymotion,AndroVM已被弃用。

您可以使用插件和Android Studio从Eclipse启动模拟器。

关于我遇到此问题的问题...按照第一个答案(使用谷歌应用程序的图像)然后创建一个谷歌帐户并打开Play商店,以便它可以更新,因为GCM需要Google Play服务。

就是这样。

答案 2 :(得分:0)

这种情况会在使用错误的模拟器的情况下发生

默认模拟器未配置为运行gcm API,您将模拟器与Google API结合使用。

您需要创建新的模拟器,选择Google API级别xx,然后运行项目并在该模拟器上运行,希望它能正常工作。