微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

React Native 中的深层链接元数据

如何解决React Native 中的深层链接元数据

应用使用 react-native: 0.63.3

我们已经在 iOS 和 Android 的 React Native 应用程序中成功实现了深层链接,但我的问题是关于与深层链接相关的元数据...

React Native 还没有包含在框架中的元数据是怎么回事?它们发出一个仅包含有效负载中的目标“url”的事件,并排除例如“referrer”,这在跟踪用户行为等方面非常重要。

React Native 框架参考:

iOS

RCTLinkingManager.mm

...

if ([userActivity.activityType isEqualToString:NSUserActivityTypebrowsingWeb]) {
    NSDictionary *payload = @{@"url": userActivity.webpageURL.absoluteString};
    [[NSNotificationCenter defaultCenter] postNotificationName:kOpenURLNotification
                                                        object:self
                                                      userInfo:payload];
}
Android

DeviceEventManagerModule.java

...

if (reactApplicationContext != null) {
    WritableMap map = Arguments.createMap();
    map.putString("url",uri.toString());
    reactApplicationContext.getJSModule(RCTdeviceeventemitter.class).emit("url",map);
}

具体来说,我需要“推荐人”以促进有关用户行为和营销支出的有用决策。

我是否在其他地方遗漏了元数据,或者元数据实际上出于某种原因被排除在外?

有没有其他人能够在不构建自己的 RN 分支的情况下完成此任务?我想进行更改并将它们公诸于 RN,但我对排除此元数据很着迷,因此正在寻找不包含它的原因。

注意:实现这一点的实际工作非常小,但由于我自己的 PR,我没有很长时间等待它被包含到 RN 中。我可以为 iOS patch-package 它,但对于 Android,我需要实际构建 RN 的分支并预编译二进制文件,这不是世界上最糟糕的事情,但考虑到我升级时感觉没有必要我的 RN 版本,我将不得不再做一次(然后再做一次,等等)。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。