android 设置定位服务,Android 定位服务和位置权限
做地圖功能時,在之前只需要一個位置權限即可,但不知道什么時候加了個定位服務,還是在系統設置里面。
看代碼:lm.isProviderEnabled(LocationManager.GPS_PROVIDER);這一句就是定位服務的判斷,如果沒有開啟定位服務,就跳到系統定位服務設置界面。
剩下的就是動態權限和非動態權限的方式了。
權限申請還是正常的在啟動頁申請,這一段在定位功能調用的時候使用
LocationManager lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
boolean ok = lm.isProviderEnabled(LocationManager.GPS_PROVIDER);
if (ok) {//開啟了定位服務
if (Build.VERSION.SDK_INT >= 23) {
if (ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
//沒有權限,現在申請權限
ActivityCompat.requestPermissions(this, new String[] {Manifest.permission.ACCESS_FINE_LOCATION}, ChatInputView.BAIDU_READ_PHONE_STATE);
} else {
createGroupMapView();
}
} else {
createGroupMapView();
}
} else {//未開啟定位服務
ToastUtil.showToast("系統檢測到未開啟GPS定位服務,請開啟");
Intent i = new Intent();
i.setAction(Settings.ACTION_LOCATION_SOURCE_SETTINGS);
startActivityForResult(i, ChatInputView.PRIVATE_CODE);
}
總結
以上是生活随笔為你收集整理的android 设置定位服务,Android 定位服务和位置权限的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C程序设计语言--第五章:指针与数组
- 下一篇: android sina oauth2.