Android中调用外部地图程序
来源:互联网 发布:disabled js移除 编辑:程序博客网 时间:2024/05/21 21:39
一、背景
今天项目得完成一个功能,就是调用手机上第三方的APP进行导航~那真是坑了个爹了,其实我百度了下,然后说高德、百度的官网,特么有个URL的接入介绍,按照规范就可以接入,但是如果百度地图没安装会报 NoActivity.... 直接会导致程序挂掉,所以我按照百度到方法加上先判断是否安装:
/**
* 判断是否安装目标应用
* @param packageName 目标应用安装后的包名
* @return 是否已安装目标应用
*/
private
boolean
isInstallByread(String packageName) {
return
new
File(
"/data/data/"
+ packageName).exists();
}
但是比较囧的是,限制了我打开第三方地图,我的本心是打算,手机上有啥就调用什么,终于,我各种百度找到了这么一个方法。
二、具体操作
<span style="font-size:18px;">Uri mUri = Uri.parse("geo:39.940409,116.355257?q=西直门");Intent mIntent = new Intent(Intent.ACTION_VIEW,mUri);startActivity(mIntent);</span>
这段代码将会弹出一个对话框,显示所有在initer-filter中注册了geo-uri类型的程序,让用户进行选择,如果我们的程序也需要支持处理geo-uri,可以通过在AndroidMainfest文件中添加如下代码来实现:
<span style="font-size:18px;"><intent-filter android:priority="0" > <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:scheme="geo" /></intent-filter></span>这么一搞的话,就很好,手机上有啥地图就呢个调用什么地图,但是如果手机上一个地图都没有,还是会报错,所以,捕获下这个错误,来个提示让先安装任意一种地图即可~
0 0
- Android中调用外部地图程序
- Android中调用外部地图程序
- Android中调用外部地图程序
- Android中调用外部地图程序
- Android中调用外部地图程序
- Android中外部程序调用方法总结
- Android中外部程序调用方法总结
- Android中外部程序调用方法总结
- Android中外部程序调用方法总结
- android调用外部地图应用
- Android中与外部进程通信和调用外部程序
- Android中与外部进程通信和调用外部程序
- Android调用外部程序
- Android调用外部程序
- Android在自己的程序中调用外部程序
- Android在自己的程序中调用外部程序
- Android上手机软件调用外部地图软件
- VC中调用外部程序
- 并查集的实现
- Treap
- Mistwald(离散数学关系矩阵+矩阵快速幂+数据读取格式问题)
- AddressBookUI Framework in iOS9 beta4
- http
- Android中调用外部地图程序
- Android图像处理之Bitmap类(1)
- 第三篇T语言实例开发,图色操作
- Java 并发专题 :FutureTask 实现预加载数据
- 安卓推送技术手册——使用透传消息的正确姿势
- php数组
- DedeCms 栏目增加缩略图功能的方法
- UI013---ImageView添加控件及tag说明
- 通过代码自定义TableViewCell(针对cell高度不一致)