在我的应用程序中,我有一个要求,我需要跟踪用户的当前位置,并通知他/她是否停留一段时间。 为此,我正在使用Google的place SDK来获取当前的位置详细信息,reference link 但是问题是输出。
如果我优先使用位置服务 PRIORITY_HIGH_ACCURACY 或 PRIORITY_BALANCED_POWER_ACCURACY ,则同一位置的Place SDK输出是不同的。
我的位置请求如下:
LocationRequest mLocationRequest = new LocationRequest();
mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
// or
// mLocationRequest.setPriority(LocationRequest.PRIORITY_BALANCED_POWER_ACCURACY);
mLocationRequest.setInterval(1000);
mLocationRequest.setFastestInterval(1000);
如上面的链接所述,由于SDK本身可以管理当前纬度-经度,因此我们没有其他选择。
所以任何人都可以帮助我如何从Place SDK获得更准确的输出。
background service的示例代码
答案 0 :(得分:0)
在documentation状态下,您可能应该迁移到GoogleApi Client
返回两个不同的结果时,应该有不同的PlaceLikelihood
。
事实上,请求的位置越不精确,返回的位置就越不准确。
对于LocationRequest,甚至没有PRIORITY_BALANCED
,只有PRIORITY_BALANCED_POWER_ACCURACY
常量可用-设置了该值后,无论什么情况,请求间隔都会自动降低您尝试将其设置为间隔。