Диплинкинг не передает URL из браузера - PullRequest
0 голосов
/ 12 июня 2018

У меня есть собственное приложение, которое имеет корневой компонент App.js.Там у меня есть код, подобный следующему:

import { Linking, ... } from 'react-native';
// other imports

export default class App extends Component {
  componentDidMount() {
    Linking.getInitialURL().then((url) => {
      console.log('URL:', url);
    });
  }

  render() {
    // render the application...
  }
}

У меня настроен манифест таким образом, чтобы перехватить этот URL:

<activity
    android:name=".MainActivity"
    android:label="@string/app_name">
     <intent-filter>
        <action android:name="android.intent.action.VIEW"/>
        <category android:name="android.intent.category.DEFAULT"/>
        <category android:name="android.intent.category.BROWSABLE"/>
        <data android:host="clamberdev.page.link" android:scheme="https"/>
    </intent-filter>
</activity>

Когда я запускаю это приложение из AndroidStudio со следующими параметрами запуска:

Android launch options

он работает как положено, и я вижу URL-адрес, записанный на консоль.

КогдаЯ открываю Firefox или Chrome на телефоне и пытаюсь зайти на https://clamberdev.page.link/gym-visits-new, это откроет мое приложение, но значение, записанное в консоль, будет null (или не определено, не помню).Это происходит независимо от того, закрыто ли приложение или просто подключено к фону.

Как мне зарегистрировать URL-адрес на консоли при диплинке из браузера?

Я пытался использовать launchMode="singleTask" иэто, кажется, не имеет значения.

...