В iOS все работает как положено — глубокая ссылка принимается и корректно обрабатывается React Native.
Однако на Android глубокая ссылка никогда не достигает уровня React Native.
Я подозреваю, что проблема в том, на стороне Android, но я не уверен, что делаю неправильно.
Android – как активировать глубокую ссылку
Это код, который я использую в своем собственном модуле Android для запуска приложения с глубокой ссылкой:
Код: Выделить всё
internal fun launch(context: Context, dataUri: Uri?) {
val launchAppIntent = context.packageManager
.getLaunchIntentForPackage(context.packageName)
?.apply {
data = dataUri
flags = FLAG_ACTIVITY_NEW_TASK or
FLAG_ACTIVITY_SINGLE_TOP or
FLAG_ACTIVITY_REORDER_TO_FRONT
}
if (launchAppIntent != null && dataUri != null) {
context.startActivity(launchAppIntent)
}
}
В моем тестовом приложении я слушаю такие глубокие ссылки:
Код: Выделить всё
useEffect(() => {
// Handle deep link when app is cold-started
Linking.getInitialURL().then((url) => {
console.log("deeplink url received:", url);
if (url) handleDeepLink(url);
});
// Handle deep link when app is already running
const subscription = Linking.addEventListener("url", (event) => {
console.log("deeplink url received:", event.url);
handleDeepLink(event.url);
});
return () => {
console.log("Removing deep link listener");
subscription?.remove();
};
}, []);
Подробнее здесь: https://stackoverflow.com/questions/798 ... act-native
Мобильная версия