在任何设备上使用谷歌地图。 (没有谷歌播放)

时间:2012-12-11 09:38:51

标签: android google-maps

我正在尝试在Android中的谷歌地图上进行可行性测试。

Google Maps Android V1

使用MapView时,我们必须添加

<uses-library android:name="com.google.android.maps" />
在androidmenifest.xml中。但据我所知,有些设备没有嵌入这个库。因此,应用程序甚至无法安装在这些设备中。

Google Maps Android V2

在V2中,地图由extra / google_play_services的sdk支持。这种方法更好,但它仍然依赖于谷歌播放服务。如果我卸载该服务,将显示一条警告消息,如下面的sreenshot。

google map demo

当我点击按钮时,它崩溃并抛出异常。

  

android.content.ActivityNotFoundException:找不到要处理的Activity   意图{act = android.intent.action.VIEW   DAT = http://play.google.com/store/apps/details?id=com.google.android.gms   flg = 0x80000 pkg = com.android.vending}

这是因为它无法找到google play,它在测试之前也会被卸载来处理Intent。但是意图可以由brower处理而不指定pkg = com.android.vending。

所以..这是我的问题。

  1. 是否有可能通过我自己的应用拦截和处理上述Intent?所以我 可以把它传给布罗尔。

  2. 如果不可能,开发android的最佳解决方案是什么 应用程序与地图。我知道有很多Android设备没有 谷歌地图或谷歌播放安装,崩溃使用不能 可以接受的。

2 个答案:

答案 0 :(得分:5)

实际上,问题与使用错误URI的Gingerbread和旧手机有关,如果他们还没有安装Play商店。这个不是安全的假设。大多数开箱即用的姜饼手机都没有配备它,谷歌更新不一定安装它。这是Google Play服务V2中的已知错误。请参阅讨论on Google Code

讨论了解决它的问题,但你需要拦截按钮才能使用它。

答案 1 :(得分:1)

你需要使用谷歌地图api来运行谷歌地图。使用google api创建AVD并在AVD(模拟器)中运行您的项目。

enter image description here