cordova – 使用PhoneGap检查GPS是否启用 - 代码日志

cordova – 使用PhoneGap检查GPS是否启用

我正在使用PhoneGap构建一个应用程序。在使用电话沟通的Geolocation API时,我意识到API超时有两个原因,同样的错误被抛出:
1.如果用户设备上没有启用GPS
2.如果GPS已启用,并且无法获取用户的位置(可能有几个原因,GPS故障,天气不清楚等)

我有分歧的原因吗?有什么想法怎么办?

我想知道是否有任何方法,我可以使用Phonegap检查用户设备上的GPS是否活动,以便我可以单独检查并直接将用户设置到通常设置GEO设置的设置窗口。不知道该怎么做?一个自定义的phonegap插件可能是?

您可以在getCurrentPosition的调用中检查geolocationErrorPositionError参数中的错误代码。我猜测当gps未启用时,将会是PositionError.PERMISSION_DENIED,当启用gps时还有PositionError.POSITION_UNAVAILABLE或PositionError.TIMEOUT,但还有其他问题。

请注意,这取决于平台。您可能必须编写一个设计错误的消息,表示“无法获取当前位置,GPS信号很弱或GPS已被关闭”。

您可以尝试的一件事是调用getCurrentPosition,具有非常小的超时时间,即1 ms。如果说拒绝了权限,您可以得出结论,gps被禁用,如果超时,可以假定gps已启用。我没有时间测试这个,你可以用你的测试结果编辑这个答案。

您可以尝试的另一件事是使用diagnostic phonegap plugin for android.您还必须确保您也可以使用其他平台的插件,但它们大都在那里。

http://stackoverflow.com/questions/13006454/use-phonegap-to-check-if-gps-is-enabled

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:cordova – 使用PhoneGap检查GPS是否启用