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

百度地图导航

在项目中或多或少会用到百度地图,如果你项目上用到导航,那么你来对了,现在的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
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,关于Android高德地图SDK的配置,我可以给您提供一些心得。 首先,您需要下载高德地图SDK的jar文件和so文件。这些文件可以在高德开放平台上下载,或者从其他第三方渠道获取。 接着,将下载好的jar文件拷贝至您的Android项目的libs目录下,并在项目的build.gradle文件中添加如下依赖: ``` dependencies { implementation files('libs/amap-android-map-x.x.x.jar') } ``` 然后,将下载好的so文件拷贝至您的Android项目的jniLibs目录下。如果没有该目录,可以手动创建。so文件的命名规则为libamap_*.so,其中*代表不同的CPU架构。 最后,在您的AndroidManifest.xml文件中添加如下权限: ``` <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <uses-permission android:name="android.permission.READ_PHONE_STATE" /> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> ``` 并在application节点下添加如下元素: ``` <meta-data android:name="com.amap.api.v2.apikey" android:value="您申请的高德地图API Key" /> ``` 需要注意的是,您需要替换上述代码中的amap-android-map-x.x.x.jar、libamap_*.so和您申请的高德地图API Key为您实际使用的文件名和API Key。 希望这些信息能对您有所帮助。如果您还有其他问题,可以随时向我提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值