问题标签 [android-gps]

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 回答
488 浏览

java - GPS 可在除 Lollipop 之外的所有设备上运行

很久以前,我编写了一个需要知道设备位置的 Android 应用程序。为了抽象对设备位置的访问,我编写了一个类,该类管理所有与位置相关的事物,存储当前设备的位置,并在 GPS 或 Internet 状态发生变化时调用主要活动以通知用户。

该应用程序一直在所有设备上运行,直到我购买了 Lollipop 随附的三星 Galaxy A5 2016。它适用于我在旧 Android 版本上测试过的所有 Jellybean 设备,但在 A5 2016 上,用户会收到 GPS 状态更改的通知,但方法 onLocationChanged() 不能正常工作,因为存储在此类上的位置始终为空. 为什么这个获取位置的课程在所有设备上都有效,而现在在 Lollipop 上它停止工作了?真是令人沮丧。Android 应用程序应该是向前兼容的。这是管理位置的类的代码,它已停止在 Lollipop 上工作。在 Lollipop 之前,位置曾经存储在类型为 的类的实例属性上Location,但从 Lollipop 开始,位置不再存储。

0 投票
1 回答
4456 浏览

android - 服务内 gps 的 requestPermissions() 。错误:“位置提供程序需要 ACCESS_FINE_LOCATION 权限。”

我面临的问题是通过我正在编写的服务向应用程序授予 gps 权限。我尝试找到一个示例来实现这一点,示例显示在 Activity 中编写一个 gpslocation 查找器,但在这种情况下,我想在服务中实现它。

服务代码如下:

这是我在 Manifest.xml 中的代码:

在这里,我附上了错误日志,显示了我面临的错误。我可以将错误视为“位置提供程序需要 ACCESS_FINE_LOCATION 权限”。 错误日志:

0 投票
0 回答
255 浏览

android - 如何确保 requestLocationUpdates 始终获取位置?

我正在使用 android 的位置管理器,我注意到当我在打开 GPS 后立即尝试使用 requestLocationUpdates 时,它给出了一个空位置。当我调用 requestlocationupdates 时,如何确保始终获得有效位置?

我的代码是:

0 投票
3 回答
6207 浏览

android - 应用启动时在 android 谷歌地图中获取当前位置(纬度,经度)

仅供参考: 我已经搜索了合适的答案,但找不到。它们中的大多数都是旧的并且使用了不推荐使用的方法。

我需要的是,当应用程序启动时,它将在当前位置显示带有标记的谷歌地图。我可以使用纬度和经度设置标记。但是,我找不到任何使用GPS获取当前经纬度的方法。

您能帮我使用 GPS 获取当前的经纬度吗?

提前致谢。

0 投票
1 回答
134 浏览

android - Android应用程序及其服务在打开某些应用程序后被杀死

我正在开发一个应用程序来跟踪用户点击开始按钮时的位置。我实现了一项服务来使用 LocationListener 记录位置,它运行良好,但我已经完成了一些繁重的测试,当我打开一些应用程序时,我的应用程序和服务被 android 随机杀死。

但是我下载了一个名为 Wikiloc 的应用程序并进行了同样的繁重测试,打开了多个应用程序,这个应用程序永远不会被杀死,我看到该应用程序创建了一个无法关闭的通知。这可能与应用程序从未被系统杀死的事实有关吗?

如何在我的应用程序中实现这一点?我必须做通知技巧吗?如果是这样,它是如何实施的?

0 投票
1 回答
245 浏览

android - 从内置方法 distanceTo 获取错误的距离

我试图从纬度日志中获取距离,但打击方法返回错误的距离我该怎么办?

0 投票
2 回答
1323 浏览

android - 现在获取当前位置,而不是更新

我正在构建一个需要您当前位置来初始化和显示地图的应用程序。我正在请求使用 更新位置LocationManager.requestLocationUpdates(...),但这似乎只在位置发生变化时给我数据(例如,我移动了 10 英尺)。我也在尝试使用 getLastKnownLocation,但在一些不常见的情况下(例如打开 GPS 并且不移动打开应用程序)这将为我正在使用的所有提供程序返回 null。

每当 getLastKnownLocation 返回 null 时,我的应用程序无法初始化,直到我移动 10 英尺并接收到位置更新。到目前为止,我还没有找到一种方法来轮询我的位置,也没有发现任何暗示当我requestLocationUpdates(...)可以在我订阅的那一刻获得我的第一个数据时,而不是在我等待指定的时间段或移动指定的时间段时距离。

一种方法是requestLocationUpdates(...)在非常小的时间间隔或 0 时间间隔上,将其发送给我当前的位置,然后再次删除 LocationListener,requestLocationUpdates(...)但这次我使用更大的值来避免耗尽电池。

我正在寻找更好的方法来解决这个问题。可能是 getCurrentLocation() 之类的东西,但实际上是任何有效的东西。

0 投票
1 回答
1676 浏览

android - requestLocationUpdates() 方法在不改变位置的情况下提供更新 - Android

我使用了检测设备位置变化的onLocationChanged方法。LocationListenerrequestLocationUpdates方法中,我设置了最小时间 = 5 秒和最小距离 = 2 米,但requestLocationUpdates即使我的设备根本没有移动(静止放置),方法也会给我更新。所以请告诉我的代码有什么问题?

这是我的代码:

.

.

0 投票
1 回答
2456 浏览

android - onLocationChanged(位置位置)不起作用 - Android

当任一位置更改(设备的位置)至少 1 米(近 40 英寸)至少 30 分钟过去时,我已使用类manager.requestLocationUpdates("gps", 1800000, 1, new LocationDetector());方法获取更新。但是当我将设备的位置更改 1 米(甚至更多)时,没有收到更新。那么可能是什么问题?请告诉。LocationManager manager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);

代码:

0 投票
2 回答
643 浏览

android - onLocationChanged() 永远不会被 requestLocationUpdate() 触发 - Android

我已经习惯manager.requestLocationUpdates("gps", 1000, 0, new LocationDetector());了每秒更新一次。但是这种方法永远不是触发onLocationChanged()方法。我已经多次运行我的应用程序,并且我还尝试等待长达 30 分钟以获取更新,但 Android 监视器上没有显示任何更新。我还仔细检查了我设备的 GPS 是否已打开。所以请告诉可能是什么问题?

代码:

输出: 在此处输入图像描述