Android之检测GPS服务和定位权限是否开启


-----------------转载请注明出处:http://blog.****.net/android_cll

一:一般都是先上两张效果图、

1.判断是否开定位权限,没开并跳转权限界面、

Android之检测GPS服务和定位权限是否开启

Android之检测GPS服务和定位权限是否开启


2.判断是否开启GPS定位服务,没开跳转相应界面去打开、


Android之检测GPS服务和定位权限是否开启


二:实现代码、

private LocationManager lm;//【位置管理】
             lm = (LocationManager) getActivity().getSystemService(getActivity().LOCATION_SERVICE);
                boolean ok = lm.isProviderEnabled(LocationManager.GPS_PROVIDER);
                    if (ok) {//开了定位服务
                        if (ContextCompat.checkSelfPermission(getActivity(), Manifest.permission.ACCESS_FINE_LOCATION)
                                != PackageManager.PERMISSION_GRANTED) {
                            // 没有权限,申请权限。
//                        Toast.makeText(getActivity(), "没有权限", Toast.LENGTH_SHORT).show();

                        } else {
                            // 有权限了,去放肆吧。
//                        Toast.makeText(getActivity(), "有权限", Toast.LENGTH_SHORT).show();
                        }
                    } else {
                        Toast.makeText(getActivity(), "系统检测到未开启GPS定位服务", Toast.LENGTH_SHORT).show();
                        Intent intent = new Intent();
                        intent.setAction(Settings.ACTION_LOCATION_SOURCE_SETTINGS);
                        startActivityForResult(intent, 1315);
                    }

-----------------我这是先判断GPS定位服务是否开启,没开跳转开启界面,然后再判断定位权限是否打开,没开跳转相应界面去打开,基础知识大佬别喷、