React Native iOS: как прослушивать входящие ссылки и обрабатывать их, когда приложение закрыто?

1

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

componentDidMount() {
  Linking.addEventListener('url', this.handleOpenURL);
}
componentWillUnmount() {
  Linking.removeEventListener('url', this.handleOpenURL);
}
handleOpenURL(event) {
  console.log(event.url);
  const route = e.url.replace(/.*?:\/\//g, '');
  // do something with the url, in our case navigate(route)
}

Это хорошо работает, если приложение находится в фоновом режиме. Однако проблема, с которой я столкнулся, заключается в том, что когда приложение закрыто, метод handleOpenURL не вызывается. Я не уверен, что пропустил шаг. Другая возможность, может быть, мне нужно добавить прослушиватель событий в другом месте. Не уверен, что делать.

  • 0
    Вы добавили поддержку глубоких ссылок в ваш файл info.plist?
Теги:
react-native
event-handling
deep-linking

2 ответа

2
Лучший ответ

Решил с помощью этого

 Linking.getInitialURL().then((url) => {
    if (url) {
      AppListeners.handleOpenUrl({ url });
    }
  });
1

Вам нужно указать url-схемы в Xcode. Зайдите в настройки вашего проекта и в разделе "информация" должна быть точка "Типы URL", а затем укажите свою ссылку там. больше о глубокой связи

  • 1
    Я сделал это, и это не работало раньше, когда приложение было полностью закрыто.
  • 0
    Это нужно как, насколько я знаю схему URL и getinitialurl.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню