浏览器版本低!无法浏览完整内容,建议升级或更换浏览器。

文档全面上新

更科技的视觉体验,更高效的页面结构,快前往体验吧!

体验新版
开发工具
Android开发工具有很多。在此,我们推荐开发者使用Android Studio作为自己的开发工具,本套开发指南也是针对Android Studio开发环境下进行编写的。
鹰眼Android示例工程
鹰眼Android SDK示例工程源码已公布,下载请点击
Hello Trace开发示例
1创建鹰眼轨迹服务
进入轨迹管理台创建鹰眼服务,获得serviceId。创建方法详见创建鹰眼轨迹服务
2申请密钥
申请android密钥,请见申请密钥
3配置工程
创建并配置工程(具体方法参见配置工程部分的介绍)
4初始化轨迹服务
// 轨迹服务ID 
long serviceId = 0;
// 设备标识
String entityName = "myTrace";
// 是否需要对象存储服务,默认为:false,关闭对象存储服务。注:鹰眼 Android SDK v3.0以上版本支持随轨迹上传图像等对象数据,若需使用此功能,该参数需设为 true,且需导入bos-android-sdk-1.0.2.jar。
boolean isNeedObjectStorage = false;
// 初始化轨迹服务
Trace mTrace = new Trace(serviceId, entityName, isNeedObjectStorage);
// 初始化轨迹服务客户端
LBSTraceClient mTraceClient = new LBSTraceClient(getApplicationContext());
5设置定位和回传周期
鹰眼轨迹数据传输采取定期打包回传的方式,以节省流量。开发者可以自定义定位频率和打包回传频率,频率可设置范围为:2~300秒。例如:定位频率为5s,打包回传频率为10s,则2次定位后打包回传一次。
// 定位周期(单位:秒)
int gatherInterval = 5;
// 打包回传周期(单位:秒)
int packInterval = 10;
// 设置定位和打包周期
mTraceClient.setInterval(gatherInterval, packInterval);
6初始化监听器
// 初始化轨迹服务监听器
OnTraceListener mTraceListener = new OnTraceListener() {
// 开启服务回调
@Override
public void onStartTraceCallback(int status, String message) {}
// 停止服务回调
@Override
public void onStopTraceCallback(int status, String message) {}
// 开启采集回调
@Override
public void onStartGatherCallback(int status, String message) {}
// 停止采集回调
@Override
public void onStopGatherCallback(int status, String message) {}
// 推送回调
@Override
public void onPushCallback(byte messageNo, PushMessage message) {}
};

回调接口的错误码及消息内容,请参阅类参考。

7开启轨迹追踪
以上设置完成后,可以开启轨迹追踪。开启轨迹追踪需进行两步:

1. 开启鹰眼服务,启动鹰眼 service

// 开启服务
mTraceClient.startTrace(mTrace, mTraceListener);

2. 开启轨迹采集,启动轨迹追踪。至此,正式开启轨迹追踪。
注意:因为startTrace与startGather是异步执行,且startGather依赖startTrace执行开启服务成功,所以建议startGather在public void onStartTraceCallback(int errorNo, String message)回调返回错误码为0后,再进行调用执行,否则会出现服务开启失败12002的错误。

// 开启采集
mTraceClient.startGather(mTraceListener);
8结束轨迹追踪
结束轨迹追踪时,可以有两种选择:

1. 停止轨迹服务:此方法将同时停止轨迹服务和轨迹采集,完全结束鹰眼轨迹服务。若需再次启动轨迹追踪,需重新启动服务和轨迹采集,示例代码如下:

// 停止服务
mTraceClient.stopTrace(mTrace, mTraceListener);

2. 停止轨迹采集:此方法将停止轨迹采集,但不停止轨迹服务(即,不再采集轨迹点了,但鹰眼 service 还存活)。若需再次启动轨迹追踪,直接调用mTraceClient.startGather()方法开启轨迹采集即可,无需再次启动轨迹服务。此方式可应用于频繁中断轨迹追踪的场景,可避免频繁启动服务。示例代码如下:

// 停止采集
mTraceClient.stopGather(mTraceListener);

注意:

开启服务、开启采集、停止采集、停止服务四个接口共用OnTraceListener监听器,每次调用时,请务必传入同一个监听器实例;或者在初始化时调用LBSTraceClient.setOnTraceListener()设置监听器,后续调用以上四个接口时无须再次传入,如:

开启服务LBSTraceClient.startTrace(mTrace, null)

开启采集LBSTraceClient.startGather(null)

此时回调消息由setOnTraceListener()时传入的监听器接收
9查询轨迹
轨迹上传的同时, 可通过轨迹查询接口获取实时轨迹信息:
// 请求标识
int tag = 1;
// 轨迹服务ID
long serviceId = 0;
// 设备标识
String entityName = "myTrace";
// 创建历史轨迹请求实例
HistoryTrackRequest historyTrackRequest = new HistoryTrackRequest(tag, serviceId, entityName);

//设置轨迹查询起止时间
// 开始时间(单位:秒)
long startTime = System.currentTimeMillis() / 1000 - 12 * 60 * 60;
// 结束时间(单位:秒)
long endTime = System.currentTimeMillis() / 1000;
// 设置开始时间
historyTrackRequest.setStartTime(startTime);
// 设置结束时间
historyTrackRequest.setEndTime(endTime);


// 初始化轨迹监听器
OnTrackListener mTrackListener = new OnTrackListener() {
    // 历史轨迹回调
    @Override
    public void onHistoryTrackCallback(HistoryTrackResponse response) {}
};


// 查询历史轨迹
mTraceClient.queryHistoryTrack(historyTrackRequest, mTrackListener);
10轨迹展示
查询获得历史轨迹后,可结合百度地图Android SDK绘制并展示轨迹。
trackshowandroid.png
  • 文档根本没法用

  • 文档水平很差

  • 文档水平一般

  • 文档不错

  • 文档写的很好

如发现文档错误,或对此文档有更好的建议,请在下方反馈。问题咨询请前往反馈平台提交工单咨询。

提交反馈

拖动标注工具

添加矩形标注

添加箭头标注

完成

取消