我正在开发一款Android应用程序,希望在单独的活动中使用Google Maps API。但是当我阅读教程时,它指出项目创建时必须将构建目标设置为Google API。我的问题是是否可以将地图添加到现有项目中?
我正在开发一款Android应用程序,希望在单独的活动中使用Google Maps API。但是当我阅读教程时,它指出项目创建时必须将构建目标设置为Google API。我的问题是是否可以将地图添加到现有项目中?
我知道这是一个老问题,但当我尝试在现有的Android Studio项目中添加Google地图时遇到了这个问题。我之前的经验是在初始应用程序创建时添加Google Maps API。
在Android Studio中,您可以使用以下方法:
File --> New --> Google --> Google Maps Activity
或者右键单击包含所有活动的文件夹,以上所述仍然有效。
让Android Studio同步,您将看到有关您的Google地图密钥的生成xml文件。复制粘贴URL(它是未缩进的URL),然后按照说明操作。之后您将获得一个密钥。获取密钥后,请将其复制并粘贴到生成的xml文件中的“YOUR_KEY_HERE”字符串常量中,然后就可以开始使用了。
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
!
你只需要更改项目的构建目标。
在Eclipse下,转到“Window” >“Preferences” >“Android”。 在项目构建目标列表中,选择提供Google APIs的一个。
注意:仅适用于针对Android v1 的Google Maps API。 Android v2的Google Maps API是由库项目提供的。
打开项目属性 > Android > 参见选项库 > 点击添加 > 如果已经在其他项目中正确完成了所有步骤,则会出现google-play-services_lib选项(仅当已经使用Google Play服务时)