将Google地图API v2添加到现有项目中

8

我正在开发一款Android应用程序,希望在单独的活动中使用Google Maps API。但是当我阅读教程时,它指出项目创建时必须将构建目标设置为Google API。我的问题是是否可以将地图添加到现有项目中?


1
什么?你肯定可以通过MapFragment将地图添加到现有项目中。https://developers.google.com/maps/documentation/android/start - Charlie Collins
你的应用程序使用哪个API? - ingh.am
酷,刚刚看了那个教程。所以,如果我的项目针对API 17,则无需在构建目标中指定Google API,是吗? - Brian Var
你的minSdkVersion是多少? - ingh.am
4个回答

13

我知道这是一个老问题,但当我尝试在现有的Android Studio项目中添加Google地图时遇到了这个问题。我之前的经验是在初始应用程序创建时添加Google Maps API。

在Android Studio中,您可以使用以下方法:

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

或者右键单击包含所有活动的文件夹,以上所述仍然有效。

让Android Studio同步,您将看到有关您的Google地图密钥的生成xml文件。复制粘贴URL(它是未缩进的URL),然后按照说明操作。之后您将获得一个密钥。获取密钥后,请将其复制并粘贴到生成的xml文件中的“YOUR_KEY_HERE”字符串常量中,然后就可以开始使用了。


就是我无法弄清楚的。谢谢。 - Ishita Sinha

4
设备必须安装Google Play服务才能运行Google Maps Android v2

该API现在作为Google Play服务SDK的一部分分发,您可以通过Android SDK Manager下载。有关安装包的安装方法,请参阅安装Maps API SDK。

您会发现这些文档很有用!

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

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

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

public static int isGooglePlayServicesAvailable (Context context)

验证此设备上是否已安装并启用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,如上所述,这是一个非常好的资源!哦,还记得要使用Google Play服务SDK


已安装了Google Play服务和API,因此我的模拟器已设置好。您认为添加地图的最简单方法是使用地图片段吗? - Brian Var
这并不是一个简单的问题,我会更新我的答案并告诉你我是如何做到的。 - ingh.am
哦,值得注意的是,你必须在设备上测试这个。它在模拟器上不起作用。 - ingh.am

1

你只需要更改项目的构建目标。

在Eclipse下,转到“Window” >“Preferences” >“Android”。 在项目构建目标列表中,选择提供Google APIs的一个。

注意:仅适用于针对Android v1 的Google Maps API。 Android v2的Google Maps API是由库项目提供的。


0

打开项目属性 > Android > 参见选项库 > 点击添加 > 如果已经在其他项目中正确完成了所有步骤,则会出现google-play-services_lib选项(仅当已经使用Google Play服务时)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接