Подтвердить что ты не робот

Открыть приложение настроек из другого приложения в iOS - React Native

Я провожу docs в React Native и могу найти только навигацию к внешним ссылкам из приложения, в котором я находится.

Я хочу иметь возможность перейти к приложению Settings (более конкретно к странице служб местоположения конфиденциальности), но, похоже, не может найти необходимую информацию. Существует способ родной iOS, который я пытаюсь реплицировать через React Native.

Возможно ли это?

Я попробовал следующее, чтобы определить, есть ли URL-адрес настроек. Консоль регистрирует, что Settings url works, однако, она не переходит к этой странице.

Обновление: благодаря @zvona Теперь я перехожу на страницу настроек, но не уверен, как добраться до определенной глубокой ссылки.

Linking.canOpenURL('app-settings:').then(supported => {

    console.log(`Settings url works`)
    Linking.openURL('app-settings:'
}).catch(error => {
    console.log(`An error has occured: ${error}`)
})
4b9b3361

Ответ 1

Вы можете получить доступ к настройкам приложения с помощью: Linking.openURL('app-settings:');

Но я еще не знаю, как открыть определенную глубинную ссылку.

Ответ 2

Я успешно открыл настройки с помощью кода ниже, надеюсь, это полезно :)

Linking.canOpenURL('app-settings:').then(supported => {
  if (!supported) {
    console.log('Can\'t handle settings url');
  } else {
    return Linking.openURL('app-settings:');
  }
}).catch(err => console.error('An error occurred', err));

Ссылка: https://facebook.github.io/react-native//docs/linking.html

Ответ 3

Вы можете глубоко ссылаться на индекс настроек так:

    Linking.openURL('app-settings:{index}')

Например, Linking.openURL('app-settings:{3}') откроет настройки Bluetooth.

Ответ 4

Linking.openURL( 'приложение-настройки: 1');

Ответ 5

Старый вопрос, но это не сработало для меня на Android, и я нашел что-то такое. Надеюсь, это поможет любому, кто ищет то же самое.:)

https://github.com/lunarmayor/react-native-open-settings У меня нет возможности протестировать его для iOS.

Открывает определенные для платформы настройки для данного приложения.

Ответ 6

Начиная с React Native версии 0.59 это должно быть возможно с использованием openSettings(); , Это описано в документации React Native Linking. Хотя у меня это не сработало, когда я попробовал быстро.

Linking.openSettings();