react-native - 在 React Native 应用程序中使用 Branch.io 在 iOS 中延迟深度链接
问题描述
我们使用 Branch.io 在我们的分支中实现了延迟深度链接。该流程在我们的 Android 版本中正常工作,但在 iOS 中不正常。单击 iOS 设备中的深层链接时,应用程序已正确安装,但我们的深层链接的延迟内容部分不起作用。宝石全branch validate
是绿色的。
相关代码为:
branch.subscribe(async ({ error, params, uri }) => {
if (error) {
console.error(`Error from Branch: ${error}`);
return;
}
if (params['+non_branch_link']) {
return;
}
if (!params['+clicked_branch_link']) {
return;
}
const deepLink = params.$deeplink_path;
if (deepLink) {
Linking.openURL(deepLink).catch((e) => { console.log('[Branch Error]', e); });
}
});
解决方案
用现有的范式永远无法解决这个问题。最后只是在我的 if 块内设置状态,如果设置了状态,则将用户重定向到错误的屏幕上。必须是某种竞争条件。
¯\ (ツ) /¯
推荐阅读
- spring - 不符合被所有 BeanPostProcessors 处理的条件(例如:不符合自动代理的条件)
- laravel - 为测试禁用 Laravel 异常处理
- angular - Angular 5 - 将参数传递给从服务器构建的角度
- java - 用于将一系列成绩映射到每个成绩点的数据结构
- tensorflow - 如何在 tensorflow 上进行对象检测所需的 windows 上安装 cocoapi 包?
- javascript - Node.js 似乎忽略了我提供的 IP 地址,而是使用 localhost 打开服务器
- audiokit - 更改 AKSequencer 的长度:奇怪的行为
- javascript - 如何在不泄露实际代码的情况下共享 JavaScript 项目?
- machine-learning - SVM 内核的 O(n) 时间
- android - 布局-土地行为