Android百度鹰眼轨迹

本文介绍了如何利用百度地图的鹰眼轨迹服务SDK在Android应用中实现实时轨迹追踪。通过创建应用获取AK,配置AndroidManifest.xml,设置权限,启动Service,实现了后台不断上传和显示配送员的行驶轨迹。同时,提到了百度SDK的兼容性和与其他库的冲突问题。
摘要由CSDN通过智能技术生成

作者:短工邦技术部 - 陈文超

百度地图之百度鹰眼轨迹使用
拿外卖配送为例,配送员从接单开始上传行驶轨迹,用户端可以实时查看配送员的行驶轨迹,对于点外卖的用户来说可以更直接地观察到自己的订单是否在配送过程中,不再需要一遍一遍地拨打商户电话催促。

在思考相关解决方案的时候第一个想到的是在后台不断地获取配送员的经纬度,上传到服务器,然后在用户端实时地刷新这些经纬度数据显示到地图上。这种方法虽说思路很简单,只是数据的上传与刷新,但是轨迹的准确度与定位的精准度有很大关系,如果遇到网络环境较弱等的情况,定位经纬度数据一定是东歪西扭的,显示在地图上的轨迹信息也是横七竖八的。

后台发现百度地图上线了鹰眼轨迹服务的SDK,可以实现对某个对象的轨迹追踪,并显示在百度地图上,看起来就是我们想要的功能,那我们就先来实现这个SDK的功能。

首先得在API控制台创建新的应用,应用类型为Android应用,把全部API都勾上,最近创建新的应用增加了“发布版SHA1”、“开发板SHA1”,大大方便了对于调试状态下的功能开发,以及签名上线后由于签名SHA1的改变而导致无法初始化SDK的问题。

开发版SHA1的获取:
可以在eclipse中直接查看:windows -> preferance -> android -> build

这里写图片描述

发布版SHA1的获取:
使用keytool
第1步:运行进入控制台

这里写图片描述

这里写图片描述

第2步:定位到.android文件夹下,输入cd .android

这里写图片描述

第3步:输入keytool -list -v -keystore debug.keystore,会得到三种指纹证书,选取SHA1类型的证书(密钥口令是android),例如:
其中keytool为jdk自带工具;debug.keystore为Android 签名证书文件的完整路径

这里写图片描述

这里写图片描述

创建成功后可以在控制台得到相应的AK,在工程AndroidManifest.xml需要配置该AK
使用过百度定位功能的同学就知道使用方法了

这里写图片描述

接下来到http://lbsyun.baidu.com/index.php?title=yingyan/manage
创建鹰眼服务,得到一个服务ID,用于在代码中初始化鹰眼服务

这里写图片描述

这里写图片描述

将开发包导入项目中

  • 6
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 12
    评论
很抱歉,我作为AI语言模型,无法提供完整的Java代码实现,但我可以为您提供一些思路和参考代码。 百度轨迹上传功能的实现主要涉及到以下几个步骤: 1. 创建轨迹上传请求对象 通过调用百度API提供的轨迹上传接口,创建一个轨迹上传请求对象,包括轨迹点数据、设备标识、数据采集时间等信息。 例如: ```java TraceUploadRequest request = new TraceUploadRequest(); request.setEntityName("device001"); request.setStartTime(System.currentTimeMillis() / 1000); request.setEndTime(System.currentTimeMillis() / 1000 + 60); List<Point> points = new ArrayList<Point>(); points.add(new Point(116.404, 39.915, System.currentTimeMillis() / 1000)); points.add(new Point(116.405, 39.916, System.currentTimeMillis() / 1000 + 10)); request.setPoints(points); ``` 2. 创建鉴权对象 为了保证数据上传的安全性,需要创建一个鉴权对象,包括AK、SK和SN等信息。 例如: ```java TraceUploadService service = new TraceUploadService(); service.setAk("your_ak"); service.setSk("your_sk"); service.setTraceUploadRequest(request); service.createSn(); ``` 3. 发送请求并处理响应 最后,将轨迹上传请求对象发送到百度API服务器,并处理响应结果。 例如: ```java TraceUploadResponse response = service.doUpload(); if (response.getStatus() == 0) { System.out.println("上传成功!"); } else { System.out.println("上传失败:" + response.getMessage()); } ``` 以上是一个简单的Java代码实现百度轨迹上传功能的示例,具体实现还需根据具体业务需求进行调整。
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值