问题标签 [android-fusedlocation]

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 投票
1 回答
6332 浏览

android - 带有 PendingIntent 的 FusedLocationApi 用于后台位置更新。无法接收更新

google 的示例源代码很容易在前端实现连续的位置更新,但我仍然无法清楚地了解或理解后台位置更新是如何使用 FusedLocationApi 和 PendingIntent 工作的。

定位服务类:

MainActivity 代码看起来很乱,所以我将在驱动器链接中分享代码:https ://drive.google.com/open?id=0B7QMYFlbkUpOVjkxMUtfenRLXzA

但是,我遵循了https://gist.githubusercontent.com/allenchi/c9659369c306752c0047/raw/16d6cd8e311013379e55b496d2b6d13347f418d6/gistfile1.txt中的示例

示例中的以下部分是我无法理解 MainActivity 中的位置。如何使用广播接收器接收位置更新?我还需要清楚地了解在后台运行的 FusedLocation 以及如何利用它来实现运行中的 gps 跟踪器。

0 投票
3 回答
2849 浏览

android - 如何恢复 LocationServices 以在 onResume 方法中请求位置更新

我的应用程序使用Google Maps Api, 来显示用户的当前位置,并且似乎工作正常,除了两个问题:

1 除非重新启动应用程序,否则用户的位置不会实时更新。

2 我不知道如何恢复LocationServices.FusedLocationApionResume因此一旦用户离开应用程序,GPS 不会重新启动。

我尝试遵循本网站上的教程和类似问题中的大多数建议(例如我应该在哪里请求 A 服务中的位置更新?),但到目前为止,我的案例没有任何效果。

这是我的代码:

}

0 投票
1 回答
754 浏览

android - Fused Location Provider 不会在位移时提供位置更新

我使用 Fused Location API 来获取位置更新。我在根据 setTimeInterval设置LocationRequest时收到更新。但我只需要更新 10m 运动。所以我放了 setSmallestDisplacement(10)。但是当我放setSmallestDisplacement(10)时,我没有得到更新。以下是我的 LocationUpdate 课程

}

如果有人知道这个问题,请给我一个解决方案。提前致谢

0 投票
0 回答
1034 浏览

android - FusedLocationApi 后台定位服务随机停止接收更新

我正在尝试使用具有未决意图的 FusedLocationApi 来获取周期位置更新,以便我可以将数据发送到某个服务器进行处理。一切正常。但是,在某些情况下广播只是停止接收。我需要再次重新启动服务才能继续。

我已经有服务 onStartCommand 返回 START_STICKY 所以即使应用程序被杀死它也应该再次启动服务。此外,我还添加了一个 Boot Completed Intent Receiver,因此如果手机死机并且用户重新启动手机,它将重新启动我的服务。

所以看起来一切都很好并且工作,但只是在某个时候,一切都停止了。我确实注意到几次,当它停止工作时,我收到的最后一个位置是 NULL(我在整个项目中记录每个位置更新和错误消息)。

任何想法为什么位置服务停止工作?

PS没有连接失败,因为我在该函数中输入了一条消息并挂钩并且它没有被调用。这也不是互联网故障,因为我也记录了这一点。互联网恢复后,它将继续正常/预期。

谢谢。

这是主要活动:

这是后台服务:

这是广播接收器:

我已将间隔设置为 5 分钟,将快速间隔设置为 2 分钟。注意:我删除了一些用于 Web 服务操作的函数调用和代码

一切正常,我得到了预期的更新,但在某个时间点,广播接收器什么也得不到。当我检查日志时,OptInStatus 没有改变,我收到的最后一个位置广播为 NULL。

我调用 Web 服务和处理状态消息的代码的其他部分不涉及服务或位置请求。

0 投票
0 回答
550 浏览

android - 具有所需精度的 Android GPS 位置

我正在使用 Google Play api 获取设备位置并通过 IntentService 定期将其发送到服务器(每 10 分钟或位置更改,以先发生者为准)。

LocationRequest.PRIORITY_HIGH_ACCURACY在构建时使用,LocationRequest并且设备 GPS 也已打开。

该 api 有时会以高精度 (<=100) 返回位置,但其他时候几乎 (>1000)。

定位精度如何达到?

我的来源:

0 投票
0 回答
50 浏览

android - 是否可以更改 SettingsAPI 对话框的文本颜色?

我按照这个来获得上面的弹出 链接到代码

有没有办法改变 Learn more、CANCEL 和 TURN ON 文本字段的文本颜色?

像这样的东西- 在此处输入图像描述

0 投票
1 回答
1247 浏览

android - 使用 FusedLocationApi 获取离线位置

我想LocationServices.FusedLocationApi.getLastLocation(mGoogleApiClient);在 GPS/Wifi 关闭时使用 google play 服务获取位置。阅读有关 的文章/博客FusedLocationApi,它提到此 API 将使用任何 GPS/Wifi 或蜂窝网络提供准确的位置。我很困惑,如果地窖网络可以提供位置,那么FusedLocationApi如果 Gps/Wifi 被禁用但它返回时应该返回位置null。谁能让我帮助/指导使用蜂窝网络获取离线位置。

问候

0 投票
0 回答
375 浏览

android - 修复位置标记在不移动时跳跃

我正在使用 Androids FusedLocationApi 定期接收位置更新并在 GoogleMaps 上显示当前位置。
我知道准确性有时会不准确,因此在我走在街上的路上会大吃一惊。

静止不动时,有时我会静止不动,位置精度高且位置错误(是的,这很正常,我知道这一点)。
但 GoogleMaps不会更改位置标记,而是会更新该点周围的精度半径。

那么我怎么知道我什么时候应该真正将标记移动到下一个位置,而不是每次更新都移动(什么会在建筑物中产生很多跳跃)?并非每个位置都有可供使用的速度值。

任何人解决了这个问题并解决了它?

0 投票
3 回答
105 浏览

android - android:改进查找当前位置

我想在 android 上找到当前用户位置。

我使用这些代码:

它适用于某些网络(数据移动)。但不适用于所有位置。(也适用于 GPS)

我可以做更多的事情来更好地处理网络吗?

0 投票
2 回答
1447 浏览

android - google play services location api有时会给出错误的位置

我的应用程序使用 Google Play 服务 API 获取用户位置并检查设备是在半径 50 公吨的特定区域内还是在外。该应用程序使用 PRIORITY_HIGH_ACCURACY 和 1 分钟的间隔。所以我创建了 GoogleApiClient:

在 onConnected 回调中:

我的应用程序还根据精度(如果精度 > 200 mt 我丢弃它)和时间(如果它太旧我丢弃它)过滤位置。

该应用程序运行良好,除了在某些特定区域,有时它会返回距真实位置约 500 米的错误位置,并且这些错误位置总是在同一个地方附近,距离蜂窝塔只有几步之遥。

在这些区域中,我得到了错误和正确位置的组合,并且我的应用程序认为设备有时在感兴趣区域之内,有时在感兴趣区域之外。

当我收到位置更新时,我会连续等待其他 3 个确认位置。如果与前一个完全相同,我也会过滤位置。这意味着当我收到这些错误时,我会连续收到 4 个错误的位置,每个位置都与其他位置略有不同。

有没有办法防止这种行为?这可能是由手机信号塔引起的吗?