Какова ценность REQUEST_CHECK_SETTINGS?

Я разработчик Xamarin, и я изучил это: https://developers.google.com/android/reference/com/google/android/gms/location/SettingsApi

Я хочу вызвать метод "startResolutionForResult", но для этого мне нужно знать значение REQUEST_CHECK_SETTINGS. В Xamarin GPS Api второй аргумент этого метода - просто целое число.

Это может показаться глупым вопросом, но значение не задокументировано, и в документации по Android есть только одна страница: https://www.google.nl/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=site:developers.google.com+REQUEST_CHECK_SETTINGS&filter=0

Ответ 1

Святое дерьмо, после долгих поисков я нашел официальный образец Google, который определяет эту константу на 0x1.

protected static final int REQUEST_CHECK_SETTINGS = 0x1;

Образец и постоянная константа можно найти на GitHub.

Кажется, что это значение просто int, как если вы используете StartActivityForResult(), чтобы убедиться, что мы возвращаемся от того, что мы просили.

Ответ 2

REQUEST_CHECK_SETTINGS не имеет особого значения и не является константой. Это код запроса, который используется для ссылки на него в функции обратного вызова onActivityResult(int requestCode, int resultCode, Intent data)

Так как эта функция вызывается и в других случаях, код запроса используется для определения того, какая задача вызвала его и выполнила необходимые действия. Поместите уникальное целое число, чтобы отличить его однозначно в диапазоне (0-max (int)). -1 скрывает диалоговое окно и любое значение ниже -1 просто приводит к сбою приложения. Он очень похож на requestPermissions(), где дополнительный 'int' используется для ссылки в функции обратного вызова onRequestPermissionsResult()

Спасибо, Индра