1

私がやろうとしていること:

LOCATION_PROVIDERS_ALLOWEDAPIレベル 19 で減価償却されたため、次のように LOCATION_MODE を使用して、ユーザーが 19 以上で有効にした位置情報アクセスの程度を取得しようとしてAPIます。

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
    int locationMode;
    try {
        locationMode = Settings.Secure.getInt(context.getContentResolver(), Settings.Secure.LOCATION_MODE);

        // Check if Location services in ON and if YES then make sure its in either HIGH_ACCURACY or POWER_SAVING mode (Not in GPS_ONLY)
        switch (locationMode) {
            case Settings.Secure.LOCATION_MODE_OFF:
            //....
            break;

            case Settings.Secure.LOCATION_MODE_SENSORS_ONLY:
            //....
            break;

            //....
        }
    } catch (SettingNotFoundException e) {
        e.printStackTrace();
    }
}

問題:

さて、LOCATION_MODEについては、ドキュメントで言及されています

注: この値が、対応する Uri の通知に存在するsettings.dbことに依存しないでください。ContentObserver

私が理解できることは、使用するのが信頼できないことを意味しますLOCATION_MODE。次に、API19 歳以上の場合、ユーザーがアプリに対して許可した位置情報へのアクセスの範囲を知るために、他に何を使用することをお勧めしますか?

4

0 に答える 0