Android引导用户打开位置权限
- 直接上代码吧,直接就可以用
private void initView() {
LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
if (locationManager.isProviderEnabled(locationManager.GPS_PROVIDER)){
//如果用户已经打开定位服务逻辑
Toast.makeText(this, "已打开定位服务", Toast.LENGTH_SHORT).show();
}else {
//如果用户没有打开定位服务引导用户打开定位
Intent intent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS);
if (intent.resolveActivity(getPackageManager())!=null){
startActivityForResult(intent,1);
}else {
Toast.makeText(Main2Activity.this, "该设备不支持位置服务", Toast.LENGTH_SHORT).show();
}
}
}
//回调
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode==1){
LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
if (locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)){
Toast.makeText(this, "用户打开定位服务", Toast.LENGTH_SHORT).show();
}else {
Toast.makeText(this, "用户关闭定位服务", Toast.LENGTH_SHORT).show();
}
}
}