主要从中国制造商获取不同设备上的位置

问题描述

第1个用例

您有一个来自中国制造商的设备,并且想要获取设备的当前位置。如@mvanbeusekom在GitHub上所述,由于特朗普与中国制造商之间的战争,某些设备不具备Google Play服务的全部功能,因此您将使用LocationManager

Position _currentPosition;
_currentPosition = await getCurrentPosition(
  desiredAccuracy: Location.high,forceAndroidLocationManager: true
);

第2个用例。

您有一个中文制造的设备,并且已经使用了第一个解决方案,但该插件仍不会返回该设备的当前位置。在继续之前,我经历了两种情况的第一种解决方案: (1)在室内时。 (2)在户外时。

用例2.1-室内

根据研究(如果我错了,请纠正我),LocationManager中的geolocator认使用GPS_PROVIDER。但是当我这样做时:

Position _currentPosition;
_currentPosition = await getCurrentPosition(
  desiredAccuracy: Location.medium,forceAndroidLocationManager: true
);

我现在有了设备的当前位置,但没有那么精确,因为显然我已经将精度设置为medium

第2.2号用例-户外

现在,上述所有解决方案都在户外工作,可以将desiredAccuracy设置为Location.highLocation.medium

第3个用例 因此,根据我的经验,我得出结论,将desiredAccuracy设置为Location.medium并将forceAndroidLocationManager设置为true是我的最佳选择。但是,当我在非中文版本的设备上尝试此操作时,它不会返回当前位置。因此,我将desiredAccuracy更改为Location.high。现在可以再次使用,但不适用于中文版本的设备。我必须等待近10分钟才能使该应用获得当前位置。

在尝试这些方法之前,请记住在您的<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>文件添加AndroidManifest.xml

问题:

我一直在中国设备上测试我的应用程序,因为如今在我们的国家(菲律宾),由于其价格合理,中国设备用户数量正在增加。我找不到不依靠geolocator获取当前位置的方法

免责声明

以上用例基于我在geolocator上的经验,可能对您没有帮助。但是,如果您对此有想法或解决方案,请帮助我。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)