全部,
我在本论坛中看到了大部分答案,我们无法打开gps程序化的盟友。我想知道Android市场上的一些应用程序,它们是如何做的?我尝试了本论坛中解释的大部分内容,它总是提示用户启用基于位置的服务。
还有其他想法吗?
谢谢, 拉梅什
答案 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);