文档章节

android 调用百度地图客户端,

Remix_jx
 Remix_jx
发布于 2014/09/03 17:50
字数 453
阅读 10859
收藏 12
以前都是使用百度API在软件里面做一个百度地图出来这样感觉既浪费时间又浪费精力,这里就教大家直接使用Intent的方式调用手机上安装的百度地图客户端,访问我们所需要的路径规划等,
//调起百度地图客户端
try {
     intent = Intent.getIntent("intent://map/direction?origin=latlng:34.264642646862,108.95108518068|name:我家&destination=大雁塔&mode=driving®ion=西安&referer=Autohome|GasStation#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();
}

但是,若客户端没有安装了百度地图客户端就会报 No Activity.... 直接会导致程序挂掉,这是开发者不希望看到的.所以在调用之前判断该手机是否安装了百度地图客户端,我们知道百度的包名为 com.baidu.BaiduMap
所以通过下面的方法进行判断:

/**  
 * 判断是否安装目标应用  
 * @param packageName 目标应用安装后的包名  
 * @return 是否已安装目标应用  
 */   
 private boolean isInstallByread(String packageName) {   
    return new File("/data/data/" + packageName).exists();   
 }


我们就可以灵活的去调用百度地图了。
我的intent是做导航用的。其他地图功能自行实现(其他功能需要的话就自行参考百度URL-API)。附上链接: http://developer.baidu.com/map/uri-intro.htm#idmykey1

调用高德地图:(其他写法都是相同只是URL-API不同)

intent = Intent.getIntent("androidamap://path?sourceApplication=GasStation&sid=BGVIS1&slat=34.264642646862&slon=108.95108518068&sname=当前位置&did=BGVIS2&dlat=36.3&dlon=116.2&dname=终点位置&dev=1&m=2&t=0");



开源中国好像没有地方上传附件,比如项目什么的。这个有点郁闷,高德就自行寻找下URL-API吧



© 著作权归作者所有

Remix_jx
粉丝 6
博文 35
码字总数 21006
作品 0
杭州
Android工程师
私信 提问
加载中

评论(1)

辽东小小
辽东小小
好文。
Phonegap各类商业插件

【Phonegap商业插件服务】[目前插件已经支持到Phonegap最新版本] 1.phonegap-百度社会化分享-andriod插件 v2.0 【该插件支持微信分享和朋友圈分享,qq好友分享,微博分享】 2.phonegap百度社...

夜澜小雨
2015/07/15
1K
0
Android 百度地图开发(一)--- 申请API Key和在项目中显示百度地图

最近自己想研究下地图,本来想研究google Map,但是申请API key比较坑爹,于是从百度地图入手,其实他们的用法都差不多,本篇文章就带领大家在自己的Android项目中加入百度地图的功能,接下来...

等待流星
2013/12/10
4.5K
1
关于APP退出,极光推送服务、以及其他三方服务的处理问题

最近在开发一个Android版的客户端,里面基本的业务功能都实现了,现在进入了最后一个阶段...调试阶段... 但是遇到了一个问题,就是APP退出... 因为APP需要推送功能,于是加入了极光推送(JPu...

FallenPanda
2013/08/12
24.4K
5
Android 百度地图开发之MyLocationOverlay,PopupOverlay的使用

这一篇文章主要讲解的是百度地图的定位功能,然后还有MyLocationOverlay和PopupOverlay两个地图覆盖物的使用,Overlay是“图层”或“覆盖物”的意思,MyLocationOverlay从名字上面理解就是我...

等待流星
2013/12/10
2.1K
0
Android 百度地图定位(手动+自动)

近由于项目需要,研究了下百度地图定位,他们提供的实例基本都是用监听器实现自动定位的。我想实现一种效果:当用户进入UI时,不定位,用户需要定位的时候,自己手动点击按钮,再去定位当前位...

带梦想一7飞
2013/07/10
1K
1

没有更多内容

加载失败,请刷新页面

加载更多

Java常见异常处理

异常是Java程序中经常遇到的问题,一个异常就是一个Bug,就要花很多时间来定位异常。 Java异常 (1)Throwable是Java异常的顶级类,所有的异常都继承于这个类。 (2)Error,Exception是异常...

daxiongdi
33分钟前
4
0
Validator 常用注解

说明 Validator主要是校验用户提交的数据的合理性的,比如是否为空了,密码长度是否大于6位,是否是纯数字的,等等。那么在spring boot怎么使用这么强大的校验框架呢。 常用 [@null](https:...

五彩的颜色
42分钟前
3
0
输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。

#1 先把入栈顺序的第一数据入栈, #2 if 入栈的数据==等于出栈的数据,就循环一次看是否新建的栈的数据是否出栈 #3 返回新建的栈是否为空,就是要的结果 public class Solution { public boo...

winkwink
48分钟前
4
0
《JAVA核心知识》学习笔记 (19. 数据库)

19.1.1. 存储引擎 19.1.1.1. 概念 数据库存储引擎是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建、查询、 更新和删除数据。不同的存储引擎提供不同的存储机制、索引技巧...

Shingfi
54分钟前
4
0
三分钟手操自己的yum源

本文章原创首发公众号:编程三分钟 上次就想手操yum源了,考虑到有的朋友没接触过,直接写成了yum源的科普,活活憋了我一个星期,现在我们快快开始。 什么情况下我们需要搭建一个仓库呢? 记...

编程三分钟
58分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部