百度地图申请KEY,定位和获取周边热点

百度地图申请key

一 打包:

1.先用android studio 生成 key.store

2.点击Build--Generate Signed APK...

3.create new...

4.输入E:\key.store

5.输入密码

6.key下的Alias中输入key

7.输入key的密码

8.Certificate中输入。。随便输入,点OK完成

9.返回来,输入密码。key alias中输入刚刚的key

10.下一步

二 获取SHA1 的值

1.打开Android Studio的Tools->Open Terminal...

2.定位到key.store 所在的位置

3.输入命令:keytool -v -list -keystore key.store

4.输入密码

/**百度地图定位配置*/

1.到官方下载这两个包

armeabi/liblocSDK5.so

locSDK_5.0.jar

导入lib里面

2.AndroidManifest.xml配置文件的<application> 中配置 <service>和 <meta-data>

<service

android:name="com.baidu.location.f"

android:enabled="true"

android:process=":remote" >

<intent-filter>

<action android:name="com.baidu.location.service_v2.2" >

</action>

</intent-filter>

</service>

<!--配置key-->

<meta-data

android:name="com.baidu.lbsapi.API_KEY"

android:value="VRMNc7QoiSM5ar5at5g3lRQD" />

3.在build.gradle中的android{}中配置

//定位要的配置以下代码

sourceSets {

main {

res.srcDirs = [‘src/main/res‘, ‘src/main/res/values-zhccccc‘]

assets.srcDirs = [‘src/main/assets‘, ‘src/main/assets/2‘]

jni.srcDirs = [‘src/main/jni‘, ‘src/main/jni/‘]

jniLibs.srcDirs = [‘libs‘]

}

}

4.代码中添加定位控件和监听

a.定义变量

/**定位控件*/

LocationClient mLocClient;

/**定位监听*/

public MyLocationListenner myListener;

b.初始化

 public void initdingwei(){
        // 定位初始化
        myListener = new MyLocationListenner();
        mLocClient = new LocationClient(this);
        mLocClient.registerLocationListener(myListener);
        LocationClientOption option = new LocationClientOption();
        option.setOpenGps(true);// 打开gps
        option.setCoorType("bd09ll"); // 设置坐标类型
        option.setScanSpan(2000); // 设置扫描间隔,单位是毫秒
        option.setIsNeedAddress(true);// 设置是否需要地址信息,默认为无地址
        mLocClient.setLocOption(option);
        mLocClient.start();
    }

c.设置监听器

 /**
     * 定位SDK监听函数
     */
    public class MyLocationListenner implements BDLocationListener {
        @Override
        public void onReceiveLocation(BDLocation location) {
            if (location == null) return;
            Log.i(TAG, "SDK监听函数11-->" + location.getLatitude() + " " + location.getLongitude() + " " + location.getCity());

	}

        public void onReceivePoi(BDLocation poiLocation) {

        }
    }

d.在需要定位的时候调用initdingwei()方法

/**百度地图接口之获取周边热点*/

 /**
     * 查询周边
     * http://api.map.baidu.com/place/v2/search
     * ak=您的密钥&
     * output=json&
     * query=%E9%93%B6%E8%A1%8C&
     * page_size=10&
     * page_num=0&
     * scope=1&
     * location=39.915,116.404&
     * radius=2000
     */
    public void getdata() {
        HttpUtils http = new HttpUtils();
        RequestParams params = new RequestParams();
        try {
            params.addBodyParameter("query", URLEncoder.encode("银行", "UTF-8"));
//            params.addBodyParameter("location", URLEncoder.encode("29", "UTF-8")+"."+URLEncoder.encode("531831", "UTF-8")+","+URLEncoder.encode("106", "UTF-8")+"."+URLEncoder.encode("531831", "UTF-8"));//"29.531831,106.576501");
            params.addBodyParameter("radius", "2000");
            params.addBodyParameter("output", "json");
            params.addBodyParameter("ak", "VRMNc7QoiSM5ar5at5g3lRQD");
            params.addBodyParameter("scope", "1");
            params.addBodyParameter("page_size", "10");
            params.addBodyParameter("page_num", "0");
            params.addBodyParameter("mcode", "DA:4C:B6:A9:55:62:1D:AD:12:29:DD:7B:69:31:67:47:C5:B2:4E:E1;szj.com.ditu");

            http.send(HttpRequest.HttpMethod.POST,
//               "http://api.map.baidu.com/place/v2/search?ak=VRMNc7QoiSM5ar5at5g3lRQD&output=json&query=%E9%93%B6%E8%A1%8C&page_size=10&page_num=0&scope=1&location=29.531831,106.576501&radius=2000&mcode==DA:4C:B6:A9:55:62:1D:AD:12:29:DD:7B:69:31:67:47:C5:B2:4E:E1;szj.com.ditu",
                    "http://api.map.baidu.com/place/v2/search?ak=VRMNc7QoiSM5ar5at5g3lRQD&output=json&query=" + URLEncoder.encode("餐馆", "UTF-8")+URLEncoder.encode("$", "UTF-8")+URLEncoder.encode("银行", "UTF-8") + "&page_size=20&page_num=0&scope=1&location="+URLEncoder.encode(latitude, "UTF-8")+","+URLEncoder.encode(longitude, "UTF-8")+"&radius=2000&mcode==DA:4C:B6:A9:55:62:1D:AD:12:29:DD:7B:69:31:67:47:C5:B2:4E:E1;szj.com.ditu",
                    params,
                    new RequestCallBack<String>() {
                        @Override
                        public void onStart() {
                        }

                        @Override
                        public void onLoading(long total, long current, boolean isUploading) {
                        }

                        @Override
                        public void onSuccess(ResponseInfo<String> responseInfo) {
                            String Data = responseInfo.result.toString();
                            try {
                                JSONObject jsonObject = new JSONObject(Data.toString());
                                if (jsonObject.getInt("status") == 0 && "ok".equals(jsonObject.getString("message"))) {
                                    JSONArray jsonArray = jsonObject.getJSONArray("results");
                                    ArrayList<Address> data;
                                    Gson gson = new Gson();
                                    Type type = new TypeToken<ArrayList<Address>>() {
                                    }.getType();
                                    data = gson.fromJson(jsonArray.toString(), type);
                                    adapter.setData(data);
                                    adapter.notifyDataSetChanged();
                                }
                            } catch (Exception e) {

                            }
                        }

                        @Override
                        public void onFailure(HttpException error, String msg) {
                            Toast.makeText(context, "连接服务器失败,请检查网络后重试~", Toast.LENGTH_SHORT).show();
                        }
                    });
        } catch (Exception e) {

        }
    }

时间: 2024-10-09 15:35:43

百度地图申请KEY,定位和获取周边热点的相关文章

android 基于百度地图api开发定位以及获取详细地址

一:百度地图开发必须要到百度开发平台android开发api下载相应的库,已经申请百度地图开发key. 二:新建项目baidumaplocation.设计main.xml文件这里注意的是MapView控件必须使用来自百度库封装好的com.baidu.mapapi.MapView .设计代码如下: Xml代码   <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=&q

[android] 百度地图开发 (三).定位当前位置及getLastKnownLocation获取location总为空问题

       前一篇百度地图开发讲述"(二).定位城市位置和城市POI搜索",主要通过监听对象MKSearchListener类实现城市兴趣点POI(Point of Interest)搜索.该篇讲述定位当前自己的位置及使用getLastKnownLocation获取location总时为空值的问题. 一. 定位当前位置的原理及实现       定位当前位置可以通过LBS(Location Based Service,基于位置的服务),主要工作原理是利用无线网络Network或GPS定

集成百度地图API实现定位

一.百度地图API获取定位 AndroidManifest.xml必须配置: 定位服务 <service android:name="com.baidu.location.f" android:enabled="true" android:process=":remote" android:exported="false"> <intent-filter > <action android:nam

HTML5 调用百度地图API地理定位

<!DOCTYPE html> <html> <title>HTML5 HTML5 调用百度地图API地理定位实例</title> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <script type="text/javascript" src="ht

百度地图sdk sha1秘钥获取有种想吐的赶脚

撸代码坐的腰算背疼还只是弄一个不是项目里边需要的升级版本的so 日 需要sha1 指纹秘钥,还有项目包, 才能用百度地图sdk 这个找sha1  获取废了20分钟, 显示全盘找keytool.exe , 我的安装在e盘,搜吧, cmd 一步步跑到这个目录下, e:\Program Files\Android\Android Studio\jre\jre\bin>keytool.exe -list -keystore C:\Users\admin\.android\debug.keystore 在

Android 集成百度地图实现设备定位

Android 集成百度地图实现设备定位步骤1:申请android 端SDK :http://lbsyun.baidu.com/步骤2:下载基础版SDK步骤3:下载示例程序步骤4:开始集成:ak加入libs加入SDKInitializer.setCoordType(CoordType.BD09LL);图标类 /** * 演示覆盖物的用法 */ public class OverlayDemo extends BaseActivity { /** * MapView 是地图主控件 */ priva

关于用模拟器运行百度地图API无法定位的问题 - 不能用模拟器

模拟器是没有办法定位,当你加入定位模块的时候,传出的参数都是空的. 定位的这个方法函数,是通过回调接口来实现,而且触发该事件的时候,需要经纬度位置改变.官方文档写得很清楚,简单点来说,就是你没有GPS定位设备就没有办法实现(只能真机测试),GPS定位是实时监控定位,随时都在接收和发射你的位置信息,只有不断的改变才能触发该定位事件.(不得不说百度的开发人员很仔细) 转载自 http://blog.csdn.net/chuchu521/article/details/7980270 最后一段 关于用

百度地图API --地理位置定位

jQuery环境 <script src="http://api.map.baidu.com/api?v=1.5&ak=1b0ace7dde0245f796844a06fb112734"></script> <form action="" id="comForm" name="comForm" method="post" onSubmit="return ch

C#的百度地图开发(三)依据坐标获取位置、商圈及周边信息

我们得到了百度坐标,现在依据这一坐标来获取相应的信息.下面是相应的代码 [html] view plaincopy public class BaiduMap { /// <summary> /// 依据坐标获取定位信息的URL模板. /// 参数1:百度地图API的KEY. /// 参数2:坐标(经度,纬度). /// </summary> public const string GEOCODING_COORDINATE_URL_TEMPLATE = "http://a