«Приложение Mock Location» появляется в списке, но не может быть выбрано - PullRequest
0 голосов
/ 04 июля 2018

Я не могу понять, почему приложение, над которым я работаю , появляется в списке «приложения-макета» в настройках разработчика, но если я выберу его, ничего не произойдет, оно все еще отключено ... Я искал везде, но не могу найти решение, каждый вопрос, который я прочитал здесь, связан с приложением , которое не отображается в списке .

Manifest:

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"/>
<uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION" />

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

Boolean:

private boolean hasMockLocationPermission() {
    if (Build.VERSION.SDK_INT > 22) {
        try {
            LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
            locationManager.addTestProvider(LocationManager.GPS_PROVIDER,
                    true, true, false, false,
                    true, true, true, Criteria.POWER_HIGH, Criteria.ACCURACY_FINE);
            return true;
        } catch (Exception e) {
            return false;
        }
    } else {
        return (Settings.Secure.getInt(getContentResolver(), Settings.Secure.ALLOW_MOCK_LOCATION, 0) != 0);
    }
}
...