我正在开发一个应用程序,其中仅使用GPS提供程序跟踪用户的位置(仅位置的设备模式)。因此,如果用户使用Wifi和数据将他的位置优先级设置为近似位置,则应用程序将无法按预期工作。因此,我需要通过编程方式检查用户对位置模式(高精度,大概位置或设备)的选择并显示适当的对话框。什么将是一个干净的方式来实现这一目标?如何以编程方式找出打开哪种模式的位置?
-1
A
回答
1
您可以LocationProvider.getAccuracy: https://developer.android.com/reference/android/location/LocationProvider.html
从文档: INT getAccuracy() 返回此供应商的常量,描述水平精度。如果提供者返回更细粒度或精确位置,则返回ACCURACY_FINE,否则,如果位置仅为近似值,则返回ACCURACY_COARSE。
+0
谢谢让我看看它! –
0
1,要检查提供商模式(GPS,网络,窖-ID)
LocationManager locationManager = (LocationManager) this.getSystemService(Context.LOCATION_SERVICE);
//get currently used providers
locationManager.getProviders(true);
2,显示对话框
new AlertDialog.Builder(this).
setTitle("Title").
setMessage("content").
show();
0
请注意,您的应用程序将两个GPS只工作模式也是高精度模式,因为两种设置均启用GPS。
为了检查GPS是否启用,这将做到这一点。
LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
boolean isGpsEnabled = locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER);
if (!isGpsEnabled) {
//show your alert here
}
相关问题
- 1. 如何以编程方式关闭打开的jquery.reveal.js模式框?
- 2. 如何以编程方式打开模式组件?
- 3. 如何以编程方式查找php.ini文件的位置?
- 4. 如何定位自举模式以打开按钮的位置
- 5. 如何以编程方式更改UIViews在Autolayout打开时的位置
- 6. 以便携式方式以编程方式打开文档
- 7. 如何以编程方式打开调出MKAnnotationView? (iPhone,MapKit)
- 8. 如何以编程方式打开电子邮件配置表?
- 9. 以编程方式打开ng-bootstrap模式
- 10. 以编程方式在比较模式下打开MS Word
- 11. 以编程方式打开PDF并以PDF格式打印C#
- 12. 如何以编程方式找出JRE网络设置?
- 13. 以编程方式打开kendoDetailTemplate
- 14. Postgres以编程方式打开log_statement
- 15. 以编程方式打开SearchableSpinner
- 16. 以编程方式打开蓝牙
- 17. 以编程方式打开pdf文件
- 18. Primefaces以编程方式打开p:fileUpload
- 19. 以编程方式打开CD托盘
- 20. 以编程方式打开屏幕
- 21. 以编程方式打开窗体
- 22. 以编程方式打开Mac App Store
- 23. 以编程方式打开Apple Health
- 24. 以编程方式打开TFS Workitem UI
- 25. Android屏幕以编程方式打开
- 26. vba:我如何以编程方式以只读方式打开工作簿?
- 27. 如何以编程方式定位TabBar
- 28. 如何在WebView中以编程方式退出全屏模式?
- 29. Bootstap Modal - 设置远程路径并以编程方式打开
- 30. 以编程方式打开设置应用程序(iPhone)
看看答案在这里:http://stackoverflow.com/questions/30467850/monitoring-geofences-after-user-turns-location-service-off-and-on/30580898 –
@DanielNugent我不想像广播接收机那样重量轻。我觉得凯伦的答案是要走的路。让我检查一下。 –
链接的答案有你需要的代码,但也有很多其他的东西。我只是在这里发布了一个答案,只有你需要的代码.... –