【问题标题】:Adding Google maps api v2 to an existing project将 Google maps api v2 添加到现有项目
【发布时间】:2013-02-21 09:09:51
【问题描述】:

我正在开发一个 Android 应用程序以将 google maps api 合并到一个单独的活动中。但是当我阅读教程时,它指出构建目标必须在项目创建时设置为 google api。我的问题是可以将地图添加到现有项目吗?

【问题讨论】:

  • 什么?您当然可以通过 MapFragment 将地图添加到现有项目中。 developers.google.com/maps/documentation/android/start
  • 您的应用程序的目标是什么 API?
  • 很酷,刚刚查看了该教程,所以如果我的项目针对 api 17,则无需在构建目标中指定 google api?
  • 你的 minSdkVersion 是多少?

标签: android api google-maps build-target


【解决方案1】:

我知道这是一个老问题,但是当我之前的经验是从初始应用创建中添加 Google Maps API 时,我试图弄清楚如何将 Google Maps 添加到现有的 Android Studio 项目中时遇到了这个问题。

在 Android Studio 中,您可以使用:

File --> New --> Google --> Google Maps Activity

或右键单击包含所有活动的文件夹,以上内容仍将保留。

让 Android Studio 同步,您将看到一个生成的关于您的谷歌地图密钥的 xml 文件。复制粘贴 URL(它是没有缩进的),然后按照说明进行操作。之后你会得到一把钥匙。获得密钥后,将其复制粘贴到生成的 xml 文件中的“YOUR_KEY_HERE”字符串常量中,就可以开始了。

【讨论】:

  • 就是我想不通的。谢谢。
【解决方案2】:

设备必须安装Google play servicesGoogle Maps Android v2 才能运行:

API 现在作为 Google Play 服务 SDK 的一部分分发,您可以使用 Android SDK 管理器下载它。要了解如何安装该软件包,请参阅安装 Maps API SDK。

你会发现这些docs很有用!

如果您的应用程序正在运行 v1,最好运行检查以查看是否安装了 Google Play services,如果未安装,则使用旧地图。我没有测试过它,但检查答案here 以运行该检查。我还发现,从here 你可以这样做:

int status = GooglePlayServicesUtil.isGooglePlayServicesAvailable(getApplicationContext();
if(status == ConnectionResult.SUCCESS) {
    //Success! Do what you want
}

并使用以下类型来确定设备上是否安装了 Google Play Services:

public static int isGooglePlayServicesAvailable(上下文上下文)

验证此设备上已安装并启用 Google Play 服务,并且此设备上安装的版本不低于此客户端所需的版本。

返回 指示是否有错误的状态码。 ConnectionResult 中可以是以下之一:SUCCESS、SERVICE_MISSING、SERVICE_VERSION_UPDATE_REQUIRED、SERVICE_DISABLED、SERVICE_INVALID。

要使用片段添加地图,您需要执行以下操作:

private GoogleMap map;
private MapFragment mapFragment;
private void InitMap()
{
    mapFragment = ((MapFragment)getSupportFragmentManager().findFragmentById(R.id.fragment_map));

    map = mapFragment.getMap();
    map.setMapType(GoogleMap.MAP_TYPE_NORMAL);
    map.setMyLocationEnabled(false);
}

对于 Google Maps Android v2 和 Fragments,如上所述,this is a great resource!哦,记得使用Google Play services SDK

【讨论】:

  • 已经安装了google play服务和api,所以我的模拟器设置好了。你说添加地图最简单的方法是使用地图片段吗?
  • 这并不是一个简单的例子,我会用我的做法来更新我的答案。
  • 哦,值得注意的是,您必须在设备上进行测试。它不适用于模拟器。
【解决方案3】:

您只需更改项目的构建目标。

在 Eclipse 下,转到 Window > Preferences > Android 在 Project Build Target 列表中,选择提供 Google API 的一个。

注意:这仅在面向 Android v1 的 Google Maps API 时有效。 Google Maps API for Android v2library project

提供

【讨论】:

    【解决方案4】:

    打开您的项目属性> Android> 查看选项库> 单击添加> google-play-services_lib 选项存在(仅当已在其他项目中正确完成所有步骤的情况下使用了 google-play 服务)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多