百度地图导航(不需要百度地图的jar包和so文件)

来源:互联网 发布:c 实现网络爬虫 编辑:程序博客网 时间:2024/06/16 03:34

百度地图导航

在项目中或多或少会用到百度地图,如果你项目上用到导航,那么你来对了,现在的Android手机上几乎都装了百度地图,所以在项目上需要导航的时候直接调用百度地图app进行导航很方便,如果手机上没有百度地图app也可以用浏览器上网页版的百度地图进行导航。下面贴代码。


/** *  百度地图导航 *  若手机存在百度app 则会用app导航 *  若无 则会用浏览器打开百度地图进行导航 *  */public class BaiduUtil {    /**     *     * @param context 上下文对象     * @param mLat 当前所在的纬度     * @param mLon 当前所在的经度     * @param merchantLat 目的地的纬度     * @param merchantLon 目的地的经度     * @param adress 当前的地方名称的名称  例如:江苏省南京市雨花台...     * @param mudi 目的地的名称 例如 江苏省南京市栖霞区...     */    public static void daozheli( Context context,Double mLat,Double mLon,Double merchantLat,Double merchantLon,String adress,String mudi) {        Intent intent = null;        try {// 如果有安装百度地图 就启动百度地图            StringBuffer sbs = new StringBuffer();            sbs.append("intent://map/direction?origin=latlng:")                    // 我的位置                    .append(mLat)                    .append(",")                    .append(mLon)                    .append("|name:")                    .append("")                            // 去的位置                    .append("&destination=latlng:")                    .append(merchantLat) // 经度                    .append(",")                    .append(merchantLon)// 纬度                    .append("|name:")                    .append("")                            // 城市                    .append("&mode=driving")                    .append("&coord_type=gcj02")                    .append("&referer=com.bjypt.vipcard|vipcard#Intent;scheme=bdapp;package=com.baidu.BaiduMap;end");            try {                intent = Intent.getIntent(sbs.toString());            } catch (URISyntaxException e) {                e.printStackTrace();            }           context. startActivity(intent);        } catch (Exception e) {// 没有百度地图则弹出网页端           String rul = "http://api.map.baidu.com/direction?origin=latlng:"+mLat+","+mLon+"|name:我家&destination=latlng:"+merchantLat+","+merchantLon+"|name:目的&mode=driving&origin_region="+adress+"&destination_region="+mudi+"&output=html&coord_type=gcj02&src=yourCompanyName|yourAppName";            Uri uri = Uri.parse(rul.toString());            intent = new Intent(Intent.ACTION_VIEW, uri);            context.startActivity(intent);        }    }}

0 0