React native - Как реализовать настройки iOS

Интересно, может ли кто-нибудь помочь мне с этим или хотя бы указать мне правильное направление.

Я искал документацию о том, как получить / установить настройки в приложении React Native iOS, чтобы эти настройки отображались в приложении настроек iOS, указанном в моем приложении. Я вижу, что есть API настроек, но, похоже, документация не полная. Там перечислены определения функций, но это все. Ни примеров, ни чего.

Может ли кто-нибудь предоставить мне простой пример, указать на учебное пособие или что-то, что поможет мне начать работу? Я предполагаю, что импортирую настройки из response-native, как и для других API, но помимо этого я не уверен, куда идти.

Спасибо.


person Chris Sheffield    schedule 16.02.2017    source источник
comment
Вы когда-нибудь догадывались об этом? Я хочу реализовать то же самое прямо сейчас, и документация очень ограничена. Интересно, единственный ли способ - через мост RN-Native.   -  person Fernando    schedule 02.05.2017
comment
Да, в конце концов я понял это. Первым шагом является добавление пакета настроек в ваш проект Xcode. Сделать это довольно просто. Просто выполните поиск в документации для разработчиков Apple, чтобы найти необходимые шаги. Затем в вашем коде React Native вы можете получить настройки с помощью чего-то вроде var value = Settings.get ('preference_name_here'). Не забудьте, конечно, импортировать API настроек.   -  person Chris Sheffield    schedule 04.05.2017
comment
@ChrisSheffield, вы должны опубликовать свое решение как ответ на свой вопрос   -  person NoodleOfDeath    schedule 20.06.2019


Ответы (2)


Как указано в документации React Native:

Settings служит оболочкой для NSUserDefaults, постоянного хранилища ключей и значений, доступного только в iOS.

Если вы хотите добавить пакет настроек iOS в свое приложение, вы можете использовать этот < / а>.

person Manav    schedule 29.07.2019

Надеюсь, этот плагин поможет. response-native-permissions

export const _checkPermission = (permissionName) => {
    return Permissions.check(permissionName).then(response => {
        if (response === 'denied') {
            return false
        } else if (response === 'authorized') {
            return true
        } else if (response === 'restricted') {
            return false
        } else if (response === 'undetermined') {
            return false
        }
    })
}

также вы можете использовать это для запроса разрешения

_requestPermission = (permissionName) => {
    return Permissions.request(permissionName).then(response => {
        return response
    })
}


export const _alertForPermission = (permissionName) => {
   return _requestPermission(permissionName)
}
person Rajan    schedule 06.11.2019
comment
Первоначальный вопрос был о том, как я могу добавить toogle в настройки MyApp в общесистемных настройках, но не о том, как я могу получить разрешение на местоположение для моего приложения из кода? - person evasyuk; 15.12.2020