zoukankan      html  css  js  c++  java
  • 百度地图 Android SDK

    百度地图 SDK 不仅为广大开发人员提供了炫酷的地图展示效果、丰富的覆盖物图层,更为广大开发人员提供了多种 LBS 检索的能力。

    通过这些接口,开发人员能够轻松的訪问百度的 LBS 数据,丰富自己的移动端地图应用。

    眼下百度地图 SDK 为开发人员提供的检索服务有:

    POI 检索:能够检索百度 POI 数据信息;

    线路规划:利用百度的引擎帮助开发人员规划线路。

    在线建议检索、短链接分享、地理编码等等....

    本文将以一个非常easy的 POI 城市内检索为例,像广大开发人员介绍接口的使用。

    第一步。选择并下载 SDK。

    这个样例我们仅仅使用检索功能,因此我们到百度 LBS 开放平台的 Android 的统一资源下载平台下载检索功能模块就能够了,详细地址例如以下:http://lbsyun.baidu.com/sdk/download


    第二步。创建 Android project,并将下载好的 SDK 导入project中;

    导入完毕后效果例如以下图所看到的:


    第三步。设计应用程序的交互界面;


    第四步。在 AndroidManifest 中加入所需权限和 SDK 开发所须要的 Key。

    <uses-permission android:name="android.permission.GET_ACCOUNTS" />  
    <uses-permission android:name="android.permission.USE_CREDENTIALS" />  
    <uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />  
    <uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" />  
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />  
    <uses-permission android:name="android.permission.INTERNET" />  
    <uses-permission android:name="com.android.launcher.permission.READ_SETTINGS" />  
    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />  
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />  
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />  
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />  
    <uses-permission android:name="android.permission.BROADCAST_STICKY" />  
    <uses-permission android:name="android.permission.WRITE_SETTINGS" />  
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <meta-data  
    	android:name="com.baidu.lbsapi.API_KEY"
    	android:value="GBm9SbM00C7Cd6vFi2evzSgK" />
    注意上面的 key 请开发人员换成自己申请的 key,详细方法请參考之前的博客介绍。

    第五步。编程。

    分别定义三个变量,PoiSearch、PoiCitySearchOption、OnGetPoiSearchResultListener。从这三个名字大家也能看得出,这三个变量各自是检索对象、检索參数和检索结果的监听方法。

    在运行 POI 检索之前。须要先初始化 PoiSearch 对象,方法例如以下:

    poiSearch = PoiSearch.newInstance();
    初始化完毕之后,紧接着须要设置它的监听方法。注意 SDK 中全部的检索请求都是异步实现的,代码例如以下:

    poiSearch.setOnGetPoiSearchResultListener(onGetPoiSearchResultListener);

    准备工作完毕后。我们在 Button 的点击响应中,加入真正的检索运行代码,例如以下所看到的:

    button.setOnClickListener(new View.OnClickListener() {
    
    	@Override
    	public void onClick(View arg0) {
    	// TODO Auto-generated method stub
    		poiCitySearchOption = new PoiCitySearchOption()
    			.city(city.getText().toString())
    			.keyword(keyword.getText().toString());
    		poiSearch.searchInCity(poiCitySearchOption);
    	}
    });
    补充一下监听方法的实现,例如以下所看到的:

    	OnGetPoiSearchResultListener onGetPoiSearchResultListener = new OnGetPoiSearchResultListener() {
    		
    		@Override
    		public void onGetPoiResult(PoiResult poiResult) {
    			// TODO Auto-generated method stub
    			String poiname = poiResult.getAllPoi().get(0).name;
    			String poiadd = poiResult.getAllPoi().get(0).address;
    			String idString = poiResult.getAllPoi().get(0).uid;
    			textView.setText(
    					"第一条结果是:
    名称=["+
    					poiname+
    					"]
    ID = ["+
    					idString
    					+ "] 
    地址=["+
    					poiadd+
    					"]");
    		}
    		
    		@Override
    		public void onGetPoiDetailResult(PoiDetailResult arg0) {
    			// TODO Auto-generated method stub
    			
    		}
    	};
    如上的监听方法是将结果中得第一条信息进行了展示,运行程序例如以下图效果:



    到这,我们就实现了利用百度地图 Android SDK 的一个最简单的 POI 检索演示样例。很多其它功能欢迎大家登陆我们的官方站点进行查询。谢谢!

    http://developer.baidu.com/map/index.php?title=androidsdk


    百度 LBS 开放平台向广大开发人员推出开发人员众測计划,參与我们的研发測试,第一时间体验我们新产品的功能,提 BUG 还能获奖,是不是非常爽呢?。~

    具体信息请參考:http://bbs.lbsyun.baidu.com/viewthread.php?tid=15300&extra=page%3D1

  • 相关阅读:
    Redis集群搭建步骤
    JS性能优化
    javaweb中实现在线人数统计
    tomcat在linux中启动慢的解决方案
    Redis高可用架构
    bjpowernode课程体系及题库
    java 相关
    码农翻身全年文章精华
    Spring源码深度解析
    PHPSTROM快捷键备份
  • 原文地址:https://www.cnblogs.com/bhlsheji/p/5314695.html
Copyright © 2011-2022 走看看