问题标签 [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 投票
2 回答
3573 浏览

java - 如何在 Service 类中使用 Fused Location Provider?

我需要在后台获取用户的位置,所以我试图在我的 Service 类中使用 Fused Location Provider。我将下面的代码放在onStart()方法中,但MainActivity.getAppContext()无法识别上下文。我可以在它的位置使用什么,因为我在我的服务类中使用它?

0 投票
1 回答
2945 浏览

android - FusedLocationApi.requestLocationUpdates 给出不兼容的类型错误

我正在使用 Google Play 服务获取当前位置。当我使用requestLocationUpdates方法时,它会给出红线说; 不兼容的类型。必需:android.location.Location。找到:com.google.android.gms.common.api.PendingResult

this指的是LocationListener。我已经实现了com.google.android.gms.location.LocationListener和覆盖onLocationChanged方法,但仍然存在红线。为了能够确定我也尝试过这个版本;

这也给出了同样的错误。方法参数有GoogleApiClient、LocationRequest、LocationListener。我不明白错误在哪里。任何想法 ?提前致谢。

0 投票
0 回答
769 浏览

android - 应用程序销毁时Google api客户端断开连接

在我的项目中,我创建了使用 google api 客户端获取位置的后台服务。

我的问题是当应用程序被破坏时,服务正在运行,但谷歌 api 客户端自动断开连接并且无法获取纬度。我不想失去联系。

这是我的服务类代码

0 投票
1 回答
1266 浏览

android - 在 Android 后台服务中使用 LocationServices.FusedLocationApi.requestLocationUpdates...onLocationChanged 从未调用

我已经搜索了好几天,不知何故,为什么没有调用 onLocationChanged 的​​答案让我无法理解。我已经广泛阅读了文档,我一定遗漏了一些重要的东西。我只是想要一个在后台运行的服务,当位置发生变化时,我想记录该位置。

这是我的服务...

我正在开始这样的服务......

我在清单中也有以下权限......

0 投票
0 回答
769 浏览

java - Android 融合位置提供程序:从未调用过 OnLocationChange

我对融合位置提供程序 api 有一个大问题,我 ovveride 的所有方法(例如在 onConnected 我得到最后一个已知位置)都在工作,除了 OnLocation 更改我不知道问题出在哪里,因为我在其他地方使用相同的代码带有 MapView 的片段,它可以正常工作。这是我的代码:

如果我们只使用 MapView 是否有必要获取位置,或者我应该在我当前的代码中更新一些东西?

0 投票
0 回答
1343 浏览

android - 在 Android 中请求位置更新,但 FusedLocationAPI 未返回

更新:我收到了这个错误,就像在这个问题(12)中解释的那样,但是根据这个答案,这只是一个内部日志,不应该对功能产生影响

V/GoogleSignatureVerifier:com.google.android.gms 签名无效

原始问题:

即使应用程序被杀死,我也必须实现与用户位置相关的不同功能。为此,我正在使用一项服务。我在尝试跟踪用户时遇到了问题,因为我在请求位置更新时似乎遇到了问题。

这是我的服务中最相关的部分:

免责声明:为了阅读,代码已被简化。与服务绑定相关的所有方法以及几个回调已被删除,因为不是问题的一部分

我正在使用mGoogleApiClient.blockingConnect(),因为由于架构限制,我无法使用连接回调,但是当我尝试获取当前位置时我没有任何问题。

startLocationUpdates()我请求位置更新时,执行似乎丢失了,也Log.d(TAG, "startLocationUpdates: Request posted")没有onLocationChanged(Location newLocation)被调用。

这是日志猫:

我的代码基本上是从Android 示例中复制而来的。我下载了示例源代码,我让它正常工作。我的代码和示例之间的两个唯一区别是我在服务内部和 using 中mGoogleApiClient.blockingConnect(),但我不知道这会如何影响这种方式。

有人遇到过这种行为吗?我真的迷路了,我会感谢任何帮助。

解决方法:

最后,我使用 PendingIntent 而不是 Callback 方法解决了这个问题。我仍然很高兴知道为什么会发生这种情况,但是如果有人遇到这个问题并且不知道如何继续,这是我的解决方法。

开始位置更新的方法:

跟踪服务:

使用这种方法我遇到了另一个奇怪的问题。如果您在用于构建 PendingIntent 的 Intent 中添加了一些额外内容,则在调用 TrackingService 时,Intent 额外内容中没有任何位置,只有在创建 Intent 时添加的内容。我的解决方法是使用 SharedPreferences 来传递我需要的 id,但我并不真正相信这个补丁。这个问题在这个问题中讨论。

0 投票
0 回答
250 浏览

android - 融合位置提供者提供虚假的准确位置

我正在使用融合位置提供程序来跟踪 android 上的用户位置。大多数情况下它工作得很好,位置信号似乎正确,但有时我会从一个我从未访问过的遥远点收到看起来准确的假定位点(准确度 <= 30)。它发生在我楼层的其他人身上,他们使用不同的安卓设备和不同的手机供应商。我们所有人都会时不时地“跳”到同一个位置点,过了一会儿我们又回到了我们的真实位置。有没有人遇到过这个问题?我不知道如何分辨哪些信号是真实的,哪些不是。我怀疑是 WIFI 提供商不时提供虚假信号(因为我们在建筑物内并且信号是准确的),但我不确定。我可以提取提供者' 来自融合位置提供者的数据?我想知道哪个提供商提供了虚假信号

谢谢,李

0 投票
2 回答
2754 浏览

android - 获得快速准确位置的最佳方式

在 Android 中,我见过很多获取位置的方法。我已经阅读了这个这个关于位置的内容,而且我已经了解了 Fused Location Api。

我在应用程序中的情况是,当用户启动应用程序时,它必须以可能的最快方式获取位置。因为我必须根据用户位置做一些特定的任务。

所以到现在我正在使用位置服务。在此,我尝试了来自 GPS 的定位和来自网络的定位。但他们都需要启用我的位置,但我认为我是否从网络获取位置无关紧要?是吗 ?

那么你们会建议我如何获得位置?哪个应该快速准确地回复?

  1. 位置与 GPS 和网络的主要区别是什么,因为两者都需要启用位置?
  2. 上下文中的最佳提供者是什么意思?
  3. 融合位置如何工作?
  4. 我是否应该选择 Fused Location API 的位置服务,因为我的应用程序将使用数据或 wifi(互联网)进行进一步工作?

请就此争论我的这些困惑?什么对我最好,请有人能分清我的情况并相应地回答我吗?

0 投票
1 回答
193 浏览

google-api - Android 中的 Fused Location Provider 是否仅在启用数据的情况下工作?

Android 中的 Fused Location Provider 会在没有数据连接的情况下工作吗?如果是的话怎么能得到位置。提前告诉你。

0 投票
1 回答
470 浏览

android - 地理围栏最佳策略

我正在研究位置和地理围栏。但我已经看到了几个问题。我认为我遗漏了一些东西,但实际上我对地理围栏和位置服务(例如 Fused Location API)有很多困惑。

我在做什么

根据我的应用场景,我必须获取用户位置(我正在使用 Fused Location API),并且我已经询问用户他的目的地是什么,假设他在 A 点,他选择了 F 点。现在我希望我的应用程序应通知他他已到达 F 点。

问题和困惑:

  1. 仅当我在我的应用程序中时才(通过我的通知)通知我我已到达目的地。看起来我的位置没有将谷歌更新到我当前的位置。那么如果应用程序关闭或在后台谷歌仍然跟踪他,那么最好的方法是什么

  2. 我正在做的是在用户目的地周围创建地理围栏。现在我不知道谷歌跟踪用户的方式是什么。? 你能告诉我在创建地理围栏后谷歌如何跟踪我们吗?

  3. 我是否需要在服务中实现一些东西,以便如果我的应用程序处于后台甚至我的应用程序被强制关闭,我的服务应该保持运行?

我想我很清楚我的问题是我想要什么。请分享您的观点,并告诉我当我们在任何位置进行地理围栏时,谷歌如何跟踪我们?

我正在按照这个来创建地理围栏。

请发表你的看法。