如何在android中知道用户是否关闭了位置[重复]

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在android中知道用户是否关闭了位置[重复]相关的知识,希望对你有一定的参考价值。

这个问题在这里已有答案:

如果用户在android中关闭了位置,我如何识别?我还想显示一个对话框来进行设置。

答案
public static boolean canGetLocation() {
    return isLocationEnabled(App.appInstance); // application context
}

public static boolean isLocationEnabled(Context context) {
    int locationMode = 0;
    String locationProviders;

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
        try {
            locationMode = Settings.Secure.getInt(context.getContentResolver(), Settings.Secure.LOCATION_MODE);
        } catch (Settings.SettingNotFoundException e) {
            e.printStackTrace();
        }
        return locationMode != Settings.Secure.LOCATION_MODE_OFF;
    } else {
        locationProviders = Settings.Secure.getString(context.getContentResolver(), Settings.Secure.LOCATION_MODE);
        return !TextUtils.isEmpty(locationProviders);
    }
}

这是一个检查设备位置是否启用的快速工具,希望这会有所帮助。

这将返回一个指示启用或不启用的布尔值。

您可以使用警报对话框单击侦听器中的以下意图导航而不是位置设置,

startActivity(new Intent(android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS));
另一答案

您可以触发广播接收器以了解gps是打开/关闭的。

答案在这里:How to trigger broadcast receiver when gps is turn on/off?

检查gps是打开还是关闭:How to check if GPS is Disabled Android

以上是关于如何在android中知道用户是否关闭了位置[重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何在后台运行android应用程序[重复]

Android 检测位置设置

Android Dev - 获取邮政编码的地理位置[重复]

我如何检查用户是不是真的在他的手机上启用了 android 中的 gps 位置

室内地图 - 如何使用室内地图跟踪用户位置和方向 - Android 和 IOS [关闭]

从IP地址获取地理位置[重复]