【问题标题】:Use google map on any devices. (without google play )在任何设备上使用谷歌地图。 (没有谷歌播放)
【发布时间】:2013-02-08 01:21:19
【问题描述】:

我正在尝试在 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 支持。这种方法更好,但它仍然依赖于 google play 服务。如果我卸载该服务,则会出现如下所示的警报消息。

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

android.content.ActivityNotFoundException:找不到要处理的活动 意图{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。但是意图可以由浏览器处理而无需指定 pkg=com.android.vending。

所以..这是我的问题。

  1. 是否可以通过我自己的应用拦截和处理上述Intent?所以我 可以传给浏览器。

  2. 如果不行,开发android最好的解决方案是什么 带地图的应用程序。我知道有很多安卓设备没有 已安装 Google Map 或 Google Play,使用时无法崩溃 可以接受。

【问题讨论】:

    标签: android google-maps


    【解决方案1】:

    实际上,如果 Gingerbread 和旧手机尚未安装 Play 商店,则该问题与使用错误 URI 的旧手机有关。这不是一个安全的假设。大多数开箱即用的 Gingerbread 手机都没有附带它,而且 Google 更新也不一定会安装它。这是 Google Play 服务 V2 中的一个已知错误。见讨论on Google Code

    讨论了绕过它的黑客,但您需要拦截按钮按下才能使用它。

    【讨论】:

      【解决方案2】:

      您需要使用 google map api 来运行 google map 。使用 google api 创建 AVD 并在该 AVD(模拟器)中运行您的项目。

      【讨论】:

      • 我知道...但是有些设备是小厂商生产的,不支持谷歌地图。使用地图库的应用程序无法安装在此类设备中。
      猜你喜欢
      • 2015-03-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多