鹰眼轨迹是百度开放平台最新推出的一套高性能轨迹存储和查询服务。百度已做好如此强大的功能,我们岂能不用。
使用鹰眼轨迹,一种方法是完全集成百度鹰眼轨迹的SDK。此方法参考http://lbsyun.baidu.com/index.php?title=android-yingyan 开发指南集成即可。
接下来要说的是第二种方式。通过自己的服务端进行交互的模式。使用该方式首先需要在百度开放平台申请服务端的ak。
第二步:在鹰眼轨迹服务中轨迹管理台创建自己的鹰眼服务。
通过这两步我们就能得到调用鹰眼轨迹服务端接口的必要字段ak和service_id。
一般来说我们只需要调用两个接口即可实现轨迹追踪功能。一个是上传定位位置,一个获取历史轨迹。
第一个接口:上传定位位置
请求URI
URI:http://api.map.baidu.com/trace/v2/track/addpoint
HTTP请求方式
POST
请求参数
| 参数名 | 参数含义 | 类型 | 备注 |
|---|---|---|---|
| ak | 用户的ak,授权使用 | string | 必须 |
| service_id | servicede ID,作为其唯一标识 | int | 必选 |
| latitude | 纬度 | double(-90.0 , +90.0) | 必选 |
| longitude | 经度 | double(-180.0 , +180.0) | 必选 |
| coord_type | 坐标类型 | int(1-3) | 必选,1:GPS经纬度坐标2:国测局加密经纬度坐标 3:百度加密经纬度坐标。 |
| loc_time | 轨迹点采集的GPS时间 | Unix时间戳 | 必选。输入的loc_time不能超过当前服务端时间10分钟以上。 |
| entity_name | entity唯一标识 | string(0-128) | 必选 |
| <column-key> | 用户自定义列的column_key | 此处值的类型须与用户自定义的column值的类型一致。 | 在track/create接口中可以为用户自定义的column赋值,当loc_time字段的值大于上一次时,如果输入了自定义的column的值,则这些值也会被更新。 |
entity_name 自己定义个唯一的区分标示即可,cord_type 一般传3,因为定位采用的百度api,返回的坐标就是百度经纬度坐标。
首先我们要在Android端集成百度定位的sdk。然后开启定位服务,每隔一段时间调用该接口上传坐标点。定位的核心方法如下。该方法建议在Service中实现。
private void initLocation(){
mLocationClient = new LocationClient(getApplicationContext()); // 声明LocationClient类
LocationClientOption option
mLocationClient = new LocationClient(getApplicationContext()); // 声明LocationClient类
LocationClientOption option

最低0.47元/天 解锁文章
3万+





