Android:以编程方式开启GPS

时间:2012-11-15 20:39:49

标签: android geolocation

  

可能重复:
  Enable GPS programatically like Tasker

全部,

我在本论坛中看到了大部分答案,我们无法打开gps程序化的盟友。我想知道Android市场上的一些应用程序,它们是如何做的?我尝试了本论坛中解释的大部分内容,它总是提示用户启用基于位置的服务。

还有其他想法吗?

谢谢, 拉梅什

2 个答案:

答案 0 :(得分:0)

不确定“开启”是什么意思。你的意思是启用还是禁用它?该主题讨论了通过利用错误启用或禁用它的一些方法:How can I enable or disable the GPS programmatically on Android?。我不会使用这种方法,因为它不适用于已修复错误的设备。最好将用户转发到设置应用程序并让他们启用gps。

你的意思是打开或关闭它以使用它,假设它已被启用?你不需要这样做。只需使用正确的位置提供程序调用LocationManager.requestLocationUpdates(),系统就会为您启用它。

答案 1 :(得分:-2)

你看过这里吗?

http://developer.android.com/guide/topics/location/strategies.html

你可以做的是断言启用了什么类型的位置提供商,检查它是否是GPS,如果没有添加它以提示用户打开GPS(确保运行一个长Toast让用户知道启用GPS位置并在启用后点击后退按钮):

  ComponentName intentComponent = new ComponentName("com.android.settings", "com.android.settings.LocationSettings");
          Intent mainIntent = new Intent("android.intent.action.MAIN");
          mainIntent.setComponent(intentComponent);
          startActivity(mainIntent);