gpt4 book ai didi

android - location.getLocation() 在真正的 android 设备上花费的时间太长。 flutter

转载 作者:行者123 更新时间:2023-12-04 23:40:45 26 4
gpt4 key购买 nike

我在尝试使用 location.getLocation() 获取用户位置时遇到问题在真实设备上,现在 它在模拟器上完美运行,速度超快但是 在真实设备上速度很慢 ,我不知道为什么会这样。
插件版本是^3.0.2 .
任何人都知道这里发生了什么。

最佳答案

我有同样的问题,但我注意到了一些事情。
观察 1
位置已关闭,现在我单击按钮获取位置。它要求我打开位置,我打开它,它需要永远到 await location.getLocation();执行永远不会到达下一行代码。
观察 2
位置已打开,现在我单击按钮以获取位置。它不会要求打开位置,因为它已经打开了,猜猜看,它会在 3-4 秒内获得用户位置😄

如何处理观察 1?
解决方案👇🏻

_locationData = await Future.any([
location.getLocation(),
Future.delayed(Duration(seconds: 5), () => null),
]);
if (_locationData == null) {
_locationData = await location.getLocation();
}
解释
我基本上保持了 5 秒的超时,如果我在 5 秒内没有得到位置,我将其丢弃返回 null然后我又打了!!并且成功了😆
我在几个应用程序中观察到了这个问题。只是 getLocation()如果位置已经打开,则功能运行良好..理想情况下不应该发生这种情况,插件或设备硬件肯定存在一些深层问题,没有时间详细说明..
希望对兄弟有帮助,加油!
PS:这个答案 https://stackoverflow.com/a/66108572/7475099帮助我形成了上述解决方案。

关于android - location.getLocation() 在真正的 android 设备上花费的时间太长。 flutter ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64171551/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com