移动开发----启动到三方软件,百度 高德(路线)
2016-12-20 17:34
309 查看
//点击跳转到百度 或者 高德 地图
public void ding(View v) { new AlertDialog.Builder(this) .setCancelable(true) .setItems(new String[]{"百度地图", "高德地图"}, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { if (which == 0) { if (isAvilible(MapAddressActivity.this, "com.baidu.BaiduMap")) {//传入指定应用包名 try { Intent intent = Intent.getIntent("intent://map/marker?location="+doubles[0]+","+doubles[1]+"&title="+name+"&content="+name+"&src=e群|#Intent;scheme=bdapp;package=com.baidu.BaiduMap;end"); startActivity(intent); //启动调用 } catch (URISyntaxException e) { Log.e("intent", e.getMessage()); } } else {//未安装 //market为路径,id为包名 //显示手机上所有的market商店 Toast.makeText(MapAddressActivity.this, "您尚未安装百度地图", Toast.LENGTH_LONG).show(); Uri uri = Uri.parse("market://details?id=com.baidu.BaiduMap"); Intent intent = new Intent(Intent.ACTION_VIEW, uri); startActivity(intent); } } else { if (isAvilible(MapAddressActivity.this, "com.autonavi.minimap")) { try{ Intent intent = Intent.getIntent("androidamap://viewMap?sourceApplication=e群&poiname="+name+"&lat="+longitude1 +"&lon="+latitude1+"&dev=0"); startActivity(intent); } catch (Exception e) {e.printStackTrace(); } }else{ Toast.makeText(MapAddressActivity.this, "您尚未安装高德地图", Toast.LENGTH_LONG).show(); Uri uri = Uri.parse("market://details?id=com.autonavi.minimap"); Intent intent = new Intent(Intent.ACTION_VIEW, uri); startActivity(intent); } } } }).show(); } // * 检查手机上是否安装了指定的软件 // * @param context // * @param packageName:应用包名 // * @return // */ public static boolean isAvilible(Context context, String packageName) { //获取packagemanager final PackageManager packageManager = context.getPackageManager(); //获取所有已安装程序的包信息 List<PackageInfo> packageInfos = packageManager.getInstalledPackages(0); //用于存储所有已安装程序的包名 List<String> packageNames = new ArrayList<String>(); //从pinfo中将包名字逐一取出,压入pName list中 if (packageInfos != null) { for (int i = 0; i < packageInfos.size(); i++) { String packName = packageInfos.get(i).packageName; packageNames.add(packName); } } //判断packageNames中是否有目标程序的包名,有TRUE,没有FALSE return packageNames.contains(packageName); }
相关文章推荐
- 滴滴打车,打车软件app实现。小车在地图上平滑移动的实现,Android,基于高德地图开发实现
- 10月10日百度 移动软件开发 三面经验
- 2015 百度 移动软件开发 一二面
- 滴滴打车,打车软件app实现。小车在地图上平滑移动的实现,Android,基于高德地图开发实现
- 《BREW进阶与精通——3G移动增值业务的运营、定制与开发》连载之37---BREW 在手机中的软件层次
- Oracle发布Java移动开发路线图 影响近千万开发者
- 百度移动终端软件平台——百度易
- 移动开发,如何选择手机软件开发平台?
- 使用VIM开发软件项目 - (14) 指随意动,移动如飞 (一)
- SUP - Sybase提供的移动软件快速开发工具,很好的支持BlackBerry
- C#开发的软件如何不让360禁止开机自动启动
- 软件开发学习路线
- 英特尔与腾讯签署MeeGo软件开发平台合作意向书 - 携手创新,为中国用户打造高品质移动体验
- 软件开发的学习路线
- 使用VIM开发软件项目 - (14) 指随意动,移动如飞 (二)
- iPhone 软件开发 之 软件启动流程
- [敏捷实践]轻装上阵: 减少敏捷软件开发团队的启动时间
- ●在线直播:3G名家大讲堂,分享企业级和产品级移动应用软件开发
- 《BREW进阶与精通――3G移动增值业务的运营、定制与开发》连载之37---BREW 在手机中的软件层次
- 百度篇——应聘百度新产品软件开发工程师及建议(一)——浅谈iGoogle