Logo
技术 转载 C#

android在自带的app中,调用手机自带的百度地图和高德地图去实现导航的功能

photo
Pastore Antonio

2023年09月19日

1.此方法不需要集成百度的sdk 高德的sdk  节省了内存 

2.只需要几行代码就能实现调用百度地图或者高德地图的sdk实现导航的功能

3.代码如下

 
private View.OnClickListener itemsOnClick = new View.OnClickListener(){

    public void onClick(View v) {
        menuWindow.dismiss();
        switch (v.getId()) {
            case R.id.btn_take_photo:
                try {
                    //location是经纬度的值  title是到达的地方名字
                    Intent intent = Intent.getIntent("intent://map/marker?location="+findcar.getContent().get(p-1).getLat()+","+findcar.getContent().get(p-1).getLongX()+"&title="+findcar.getContent().get(p-1).getName()+"&content=百度奎科大厦&src=yourCompanyName|yourAppName#Intent;scheme=bdapp;package=com.baidu.BaiduMap;end");
                    if(isInstallByread(FindCarActivity.this,"com.baidu.BaiduMap")){
                        startActivity(intent); //启动调用

                    }else{
                        Toast.makeText(FindCarActivity.this,"没有安装百度地图客户端",Toast.LENGTH_SHORT).show();
                    }
                } catch (URISyntaxException e) {
                    e.printStackTrace();
                }


                break;
            case R.id.btn_pick_photo:
                try
                {
                    Intent intent = Intent.getIntent("androidamap://viewMap?sourceApplication=平治科技&poiname="+findcar.getContent().get(p-1).getName()+"&lat="+findcar.getContent().get(p-1).getLat()+"&lon="+findcar.getContent().get(p-1).getLongX()
                            +"&dev=0");
                    if(isInstallByread(FindCarActivity.this,"com.autonavi.minimap")){
                        startActivity(intent);
                    }else{
                        Toast.makeText(FindCarActivity.this,"没有安装高德地图客户端",Toast.LENGTH_SHORT).show();
                    }

                } catch (URISyntaxException e)
                {
                    e.printStackTrace();
                }
                break;
            default:
                break;
        }


    }

};
/**
 * 判断是否安装了这个应用
 * @param context
 * @param packagename
 * @return
 */
private Boolean isInstallByread(Context context,String packagename){
    PackageInfo packageInfo;
    try {
        packageInfo =context.getPackageManager().getPackageInfo(packagename,0);
    } catch (PackageManager.NameNotFoundException e) {
        packageInfo = null;
        e.printStackTrace();
    }
    if(packageInfo == null){
        return  false;
    }else{
        return  true;
    }
}

 

 

 

 

 

 

转载于:https://my.oschina.net/handlermsg/blog/806403

本文为原创文章,请注意保留出处!
修复群晖Synology Drive client右键菜单缺失问题 Local, clean & environmental 作者:Pastore Antonio
1806 浏览量
1779 浏览量
configure: error: Package requirements (oniguruma) were not met Local, clean & environmental 作者:Pastore Antonio
1524 浏览量
Adobe Acrobat Pro 激活 Local, clean & environmental 作者:Pastore Antonio
1518 浏览量
追寻日出,找回自己 Local, clean & environmental 作者:Pastore Antonio
1488 浏览量