当应用程序在托盘中时,React Native Linking.addEventListener() 不触发

React Native Linking.addEventListener() Not Firing When App is in Tray

使用 React Native Linking 和 Firebase 生成动态 links。一切正常,除非应用程序在后台打开或在您单击 link 时 "tray"。如果当有人点击 link 时应用已经打开,它什么都不做。

我的监听器是在 componentDidMount 中设置的,就像 documentation 所说的那样,但它没有触发。

componentDidMount() {
  Linking.addEventListener('url', this._handleOpenURL);
},

事实上,我已经检查并提醒了 componentWillMount()、componentDidMount()、componentWillUpdate()、componentWillUnmount()、componentWillReceiveNewProps() 和 _handleOpenURL(),当我点击 link 并且它 "re-opens" 来自后台的应用程序?我做错了什么?

明白了,我会留下这个问题,以防其他人遇到同样的问题。

原来我只需要将这个代码块添加到我的 AppDelegate.m 文件中。

- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity
 restorationHandler:(void (^)(NSArray * _Nullable))restorationHandler
{
  return [RCTLinkingManager application:application
                   continueUserActivity:userActivity
                     restorationHandler:restorationHandler];
}