开发者在挂载TencentLocationService.cs脚本的GameObject上挂载一个自己实现的脚本,在脚本中开启定位、获取定位结果、结束定位。


开启定位

TencentLocationService.cs挂载到任意一个GameObject上,GameObject运行时,定位服务会自动进行初始化,当定位状态处于Ready状态,打开定位才有效。判断定位是否处于ready状态的方法如下:

开启定位

  • desiredAccuracyInMeters: 期待的定位精度,例如设置30,返回的定位数据都是精度误差小于等于30米的,不设置时默认为-1,返回所有精度的定位数据。
  • updateDistanceInMeters:最小更新距离,例如设置10,当移动的距离超过10米,才会返回定位数据,不设置时默认为-1,有位置更新就返回。

获取定位数据

更新的定位数据封装在TencentLocationInfo中。

1. 主动获取最后一次定位结果

2. 通过回调实时获取定位结果

挂载TencentLocationService.cs脚本的GameObject上挂载的脚本需要实现接口 ILocationListener.OnLocationUpdate(string locInfo)

定位回调结果如下图所示:


停止定位

定位状态

通过tencentLocationService.status可以查看当前的定位状态,一共有5种定位状态:

定位失败状态码

当定位失败,即tencentLocationService.status == TencentLocationServiceStatus.Failed时,可以通过tencentLocationService.errorCode查看定位失败的状态码,以便查看对应的原因;

例如:Api key配置不正确: tencentLocationService.errorCode == ErrorCode.API_KEY_ERROR;

Tips

具体使用,可以参考提供的Demo工程.