问题标签 [fusedlocationproviderclient]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
747 浏览

android - 如何修复从 android 中的 FusedLocationProviderClient 获取空位置值

我一直在尝试使用 android 中的 FusedLocationProviderClient 获取当前位置数据。我总是在位置变量上得到空值,我该如何解决?

我试图按照 FusedLocationProviderClient 的 android 开发者网站的步骤进行操作,但没有帮助。

我希望此代码返回当前位置数据。

0 投票
2 回答
406 浏览

java - 避免方法调用 getLatitude 可能产生 java.Lang.NullPointerException

我有一种方法可以在地图上显示设备的当前位置。我正在使用FusedLocationProviderClient,因为它似乎是最准确的。

currentLocation.getLatitude()收到警告:

方法调用可能产生 java.Lang.NullPointerException

我怎样才能避免这种风险?为什么它只与 currentLocation.getLatitude() 而不是相关currentLocation.getLongitude()

0 投票
0 回答
91 浏览

android - 使用 fusedLocationProviderClient 时“呼叫需要权限,用户可能会拒绝”

我了解您需要检查用户是否允许位置,然后再对fusedLocationProviderClient. 所以我创建了一个像这样的全局方法:

并在我的活动中使用它:

但是我仍然得到一个红色下划线fusedLocationProviderClient.lastLocationCall requires permission which may be rejected by user: code should explicitly check to see if permission is available (with checkPermission) or explicitly handle a potential SecurityException.

知道为什么吗?

0 投票
0 回答
136 浏览

android - FusedLocationProviderClient 有时不返回位置

我想在 Android Studio 中制作一个返回用户位置的应用程序。这是我正在使用的代码:

}

现在有时它会返回正确的位置,但有时会显示 Toast 消息“找不到您的位置!!!” 我认为这意味着它没有得到位置。请告诉我一种应用程序将始终返回用户位置的方式。

0 投票
1 回答
481 浏览

android - 使用 FusedLocationProviderClient 在 Lollipop Emulator 上不调用 onLocationCallback

使用 FusedLocationProviderClient,不会在 Lollipop Emulator 上调用 locationCallback。模拟器不包含 GOOGLE Play Services。弹出启用位置服务的 POP UP 并调用 startLocationUpdates() 方法但未调用回调。FusedLocationAPI 是否应该在没有 Goodle Play 服务的情况下工作?

0 投票
1 回答
498 浏览

android - 如何为 WorkManager 和 LocationServices 获得正确的依赖关系?

对于使用工作人员获取设备位置的应用程序,我一直无法获得正确的依赖关系。我怀疑我在 androidx 上使用了错误的定位服务,但我还没有找到其他任何东西。这是我的 build.gradle:

我排除了 com.android.support 以避免构建异常,例如

在 worker doWork() 运行时:

抛出此异常:

0 投票
1 回答
300 浏览

android - FusedLocationProviderClient 返回不准确的位置

我正在使用 Google 的 fusedlocationproviderclient 使用前台服务在 android 上实时跟踪用户的位置。我注意到有时 fusedlocationproviderclient 连续多次返回相同的位置。截至目前我观察到,有时 fusedlocationproviderclient 返回非常不准确的位置(大约 700m)

早些时候,我曾经使用 Location_Services 跟踪位置,但为了减少电池消耗,我转移到了 fusedlocationproviderclient。我已将 fusedlocationproviderclient 优先级设置为高精度。我已将 minDisplacement 设置为 100m。

这是我的位置对象

我期待它应该返回准确的位置。当我在静态地图上显示跟踪位置时,由于位置不正确,地图中会出现一条直线。

0 投票
0 回答
201 浏览

android - Android:当设备位置已启用时,FusedLocationProviderClient 不会调用 onLocationResult()

我最近一直盯着问题,因为我FusedLocationProviderClient没有调用设备位置已启用的onLocationResult()方法,LocationCallback但是当我要求用户先自己启用位置(起初禁用)时这样做没有问题。下面我发布了我的代码(我没有显示我如何事先获得位置许可)从以下位置调用onCreate()

这在使用预先启用的位置之前没有问题。

0 投票
1 回答
79 浏览

android - 如何仅根据最低位置精度更新位置

我目前正在开发一个需要高精度位置更新的位置跟踪应用程序。这是我的第一个应用程序,我可能会不知所措,但我正在学习。我在使用 location.distanceTo() 时从 fusedLocationProviderClient 获得的准确度在每次更新(5 秒间隔)之间移动 15 到 70+ 米,同时以恒定的速度行走。有没有办法提高精度或设置最小精度?

我在文档中找到了 getAccuracy() 和 hasAccuracy() 方法,但到目前为止我还没有理解如何使用这些方法来消除波动的准确性。

编辑:我遇到了将条件添加到我的位置代码的选项。您能否为我提供一个示例,说明如何将其合并到我的代码中以获得始终如一的高精度?

或者,将我的代码更改为专门使用 LocationManager 和 GPS 卫星会更好吗,因为我的所有会话都是在外面完成的?

0 投票
2 回答
5806 浏览

android - 在 FusedLocationProviderClient.requestLocationUpdates() 中使用 Looper.myLopper() 或 null 是否相同?

我正在创建一个使用该FusedLocationProviderClient.requestLocationUpdates()方法的位置跟踪应用程序。它的一个论点需要一个Looper对象,我不完全确定它是如何工作的。现在我只是传递null给它,它按预期工作。

经过研究,我了解到 UI Thread 基本上是一个HandlerThread已经有自己的 Looper 对象(我知道基本的东西,但意识到有点晚)。所以Looper.myLooper(这次我使用 ) 而不是 null ,它仍然有效。

文档说传递null在调用线程上执行 locationCallback。那么当我使用Looper.myLooper(). 从字面上的任何线程调用时两者是否具有相同的效果,或者我错过了什么?