Google Place SDK提供了错误的当前地点详细信息

时间:2018-09-19 10:59:30

标签: android google-places-api google-maps-android-api-2 google-places

在我的应用程序中,我有一个要求,我需要跟踪用户的当前位置,并通知他/她是否停留一段时间。 为此,我正在使用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的示例代码

1 个答案:

答案 0 :(得分:0)

documentation状态下,您可能应该迁移到GoogleApi Client

返回两个不同的结果时,应该有不同的PlaceLikelihood

事实上,请求的位置越不精确,返回的位置就越不准确。

对于LocationRequest,甚至没有PRIORITY_BALANCED,只有PRIORITY_BALANCED_POWER_ACCURACY常量可用-设置了该值后,无论什么情况,请求间隔都会自动降低您尝试将其设置为间隔。

另请参阅FusedLocationProviderClient