我正在 Flutter 中进行开发,并尝试使用 geolocator 包获取 GPS 信息。
\n我能够在模拟器上毫无问题地获取 GPS 信息,但是当我在实际设备上启动该应用程序时,我无法获取 GPS。\n该应用程序工作正常,因此不是错误,但有一条消息。
\n“如果在主线程上调用此方法可能会导致 UI 无响应。相反,请考虑等待 -locationMana gerDidChangeAuthorization:回调并首先检查授权状态。”
\nFlutter 端的代码
\nFuture<Position> getGps(BuildContext context) async {\n return await Geolocator.getCurrentPosition(\n desiredAccuracy: LocationAccuracy.high,\n timeLimit: Duration(seconds: 5),\n );\n}\nRun Code Online (Sandbox Code Playgroud)\n(警告)IOS端的代码
\n - (ServiceStatus)checkServiceStatus:(PermissionGroup)permission {\n return [CLLocationManager locationServicesEnabled] ? ServiceSttus Enabled\n : ServiceStatusDisabled;\n }\nRun Code Online (Sandbox Code Playgroud)\n2023/1/26 添加
\n我已将其添加到 info.plist 中。尽管如此,我还是没有得到 GPS 信息。
\n信息列表
\n<key>NSLocationAlwaysUsageDescription</key>\n<string>Access location information to get a location</string>.\n<key>NSLocationWhenInUseUsageDescription</key>\n<string>Access location information to get location</string>\nRun Code Online (Sandbox Code Playgroud)\n如何获取 GPS 信息?\n已授予获取位置服务的权限。
\n …