示例中心
功能在线体验
控制台
您现在的位置: 开发 > 高德地图手机版 > 入门指南 >

高德 开发 高德地图手机版 入门指南

更新时间:2017年08月18日

Android 端

如果您需要在浏览器中打开高德地图App,例如在H5页面中跳转到高德地图App,或者在本地App中加载的H5页面跳转到高德地图App,需要使用scheme调用,在H5中的链接中加入高德地图的Scheme即可,如(以导航为例):

<a href="androidamap://navi?sourceApplication=appname&amp;poiname=fangheng&amp;lat=36.547901&amp;lon=104.258354&amp;dev=1&amp;style=2">导航</a>

如果您需要在本地App中打开高德地图App,这种场景即在本地App中通过Java代码调用高德地图页面功能,此时就需要使用 Intent调用。同样以导航功能为例:

Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.addCategory(Intent.CATEGORY_DEFAULT);

//将功能Scheme以URI的方式传入data
Uri uri = Uri.parse("androidamap://navi?sourceApplication=appname&amp;poiname=fangheng&amp;lat=36.547901&amp;lon=104.258354&amp;dev=1&amp;style=2");
intent.setData(uri);

//启动该页面即可        
startActivity(intent);

上述URI调用参数的具体含义请参见Android URI 详细文档

iOS 端

步骤 1:配置白名单 由于iOS的限制,iOS系统在9之后的版本中,如果开发者的app希望调起高德地图,必须在自己app的设置中配置白名单。

配置方法:

1、找到您的Info.plist文件

2、在文件中添加key:LSApplicationQueriesSchemes,类型是Array,如果曾经添加过,无需再次添加。

3、Array中添加一个item,类型为String,值为iosamap。

添加完成后截图如下:

步骤 2:判断是否安装了高德地图

配置完成后,您就可以在自己的app中判断高德地图是否已安装。

示例代码如下:

NSURL *scheme = [NSURL URLWithString:@"iosamap://"];
BOOL canOpen = [[UIApplication sharedApplication] canOpenURL:scheme];

如果canOpen为YES,则安装了高德地图;如果canOpen为NO,则未安装高德地图。

步骤 3:调起高德地图

使用iOS提供高德API即可调起高德地图,需要注意的是从iOS10版本起,API有更新。

NSURL *myLocationScheme = [NSURL URLWithString:@"iosamap://myLocation?sourceApplication=applicationName"];
        if ([[UIDevice currentDevice].systemVersion integerValue] >= 10) {
            //iOS10以后,使用新API
            [[UIApplication sharedApplication] openURL:myLocationScheme options:@{} completionHandler:^(BOOL success) {
                NSLog(@"scheme调用结束");
            }];
        } else {
            //iOS10以前,使用旧API
            [[UIApplication sharedApplication] openURL:myLocationScheme];
        }
示例中心 功能
在线体验
常见问题