android笔记之百度地图详情页展示

来源:互联网 发布:如何招聘php程序员 编辑:程序博客网 时间:2024/05/18 01:31

1.自己的app应用


点击导航即可跳转到百度地图app的详情页展示:


实现代码:

if(!isInstallByread("com.baidu.BaiduMap")){
            ShowToast.showToast("未安装百度地图",Activity_DiTu.this,false);
            return;
        }
        Intent intent = null;
        try {
            intent = Intent.getIntent("intent://map/place/detail?uid="+hoteluid+"&src" +
                    "=thirdapp.detail.yourCompanyName.tutengjiudian#Intent;scheme=bdapp;package=com" +
                    ".baidu.BaiduMap;end");


        } catch (URISyntaxException e) {
            e.printStackTrace();
        }
        startActivity(intent); //启动调用

判断手机是否安装了百度地图:

  private boolean isInstallByread(String packageName) {
        return new File("/data/data/" + packageName).exists();
    }

实现代码百度地图api,URLapi里面有例子

说明:

关于需要展示的uid的获取的。实际上没找到可以明确查找uid的方法,因为需求,所以此处是先通过代码获取uid,然后把uid给后台服务器,让服务器接口返回给android端

拿到uid的代码:

初始化:

posPoiSearch=PoiSearch.newInstance();posPoiSearch.setOnGetPoiSearchResultListener(new MyListener());

实现搜索监听事件


class MyListener implements OnGetPoiSearchResultListener{@Overridepublic void onGetPoiDetailResult(PoiDetailResult arg0) {// TODO Auto-generated method stub}@Overridepublic void onGetPoiResult(PoiResult arg0) {// TODO Auto-generated method stubList<PoiInfo> allPoi = arg0.getAllPoi();for(int i=0;i<allPoi.size();i++){Log.i("测试", "uid    "+allPoi.get(i).uid);Log.i("测试", "地址         "+allPoi.get(i).address);Log.i("测试", "name   "+allPoi.get(i).name);}}}

实现搜索参数配置:

<pre name="code" class="java">public void btnOnclick(View view){/*PoiCitySearchOption city=new PoiCitySearchOption();city.city("成都");city.keyword("酒店");city.pageNum(10);city.pageCapacity(arg0)posPoiSearch.searchInCity(city);//发起检索这个动作*/PoiNearbySearchOption near=new PoiNearbySearchOption();near.location(new LatLng(30.649499,104.064682));near.radius(1000);near.keyword("酒店");near.pageCapacity(100);posPoiSearch.searchNearby(near);}


然后可以根据log的输出找到需要的地址的uid,然后可以根据这个uid跳转到百度地图详情页。

更好的获取uid的方式正在查找资料中

0 0
原创粉丝点击