首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >本机PushNotificationIOS不听推送通知

本机PushNotificationIOS不听推送通知
EN

Stack Overflow用户
提问于 2015-04-12 06:27:47
回答 2查看 4.2K关注 0票数 7

我正在测试react原生PushNotificationIOS。

http://facebook.github.io/react-native/docs/pushnotificationios.html#content

我将事件绑定在componentWillMount函数中,如下所示

代码语言:javascript
运行
复制
PushNotificationIOS.addEventListener('notification', this._onNotification);

我把推送通知从服务器发送到设备。它不会捕获推送通知。

我只能在对象c代码下面收到推送通知。

代码语言:javascript
运行
复制
(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {
}

PushNotificationIOS可以监听RCTDeviceEventEmitter的呼叫。但是来自服务器的通知无法侦听。

有人知道这个问题吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-07-29 18:01:26

推送通知不起作用,这一点在React中没有记录。为了连接通知,您需要先向项目中添加一些内容。我从github https://github.com/facebook/react-native/pull/1979#issue-94795697上的一个公开问题中找到了这个信息。

基本上,您需要在AppDelegate.m中手动连接通知,并从RCTPushNotificationManager调用相应的方法,以便PushNotificationsIOS类可以从您的javascript代码中处理它们。

  1. 将RCTPushNotification添加到项目中(并在构建设置中链接二进制文件)。
  2. 将此头添加到头搜索路径:$(SRCROOT)/node_modules/react-native/Libraries/**
  3. 将此代码添加到AppDelegate.m:
代码语言:javascript
运行
复制
#import "RCTPushNotificationManager.h"

- (void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError *)error
{
    [RCTPushNotificationManager application:application didFailToRegisterForRemoteNotificationsWithError:error];
}

- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken
{
    [RCTPushNotificationManager application:application didRegisterForRemoteNotificationsWithDeviceToken:deviceToken];
}

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)notification
{
    [RCTPushNotificationManager application:application didReceiveRemoteNotification:notification];
}
票数 7
EN

Stack Overflow用户

发布于 2015-04-17 09:58:21

我也发现了这一点,因此编写了一个替换模块来处理接收推送通知- https://github.com/darylrowland/react-native-remote-push

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29586667

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档