实现的效果,点击后跳转到第三方地图,自己的应用终于可以不集成第三方sdk啦啦啦啦
调用百度地图 百度的包名为 com.baidu.BaiduMap
显示指定的位置
详细请查看官方url API http://developer.baidu.com/map/uri-introandroid.htm#idmykey41
try {
intent = Intent.getIntent("intent://map/marker?location=31.075758,121.503256&title=我的位置&content=上海闵行区&src=yourCompanyName|yourAppName#Intent;scheme=bdapp;package=com.baidu.BaiduMap;end");
if(isInstallByread("com.baidu.BaiduMap")){
startActivity(intent); //启动调用
Log.e("GasStation", "百度地图客户端已经安装") ;
}else{
Log.e("GasStation", "没有安装百度地图客户端") ;
}
} catch (URISyntaxException e) {
e.printStackTrace();
}
调用高德地图 高德的包为 com.autonavi.minimap Java代码
显示指定的位置
详细请查看官方url API http://lbs.amap.com/api/uri-api/summary/
private void openGaoDeMap()
{
try
{
Intent intent = Intent.getIntent("androidamap://viewMap?sourceApplication=应用名字&poiname=上海闵行区&31.075758,121.503256&dev=0");
startActivity(intent);
} catch (URISyntaxException e)
{
e.printStackTrace();
}
}````
判断是否安装了地图应用
private boolean isInstallByread(String packageName)
{
return new File("/data/data/" + packageName).exists();
}
高德地图导航掉起
try
{
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.addCategory(Intent.CATEGORY_DEFAULT);
String data="androidamap://route?sourceApplication=softname&slat=31.226532&slon=121.550492&sname=abc&dlat=31.075758&dlon=121.503256&dname=def&dev=0&m=0&t=1";
intent.setData(Uri.parse(data));
intent.setPackage("com.autonavi.minimap");
startActivity(intent);
} catch (Exception e)
{
e.printStackTrace();
}
网友评论