极光

集成 jpush-react-native 常见问题汇总 (iO

2017-03-27  本文已影响881人  HuminiOS

给 iOS 应用添加推送功能是一件比较麻烦的事情,本篇文章收集了集成 jpush-react-native 的常见问题,目的是为了帮助用户更好的排查问题

1. 收不到推送

2. 收到一条通知 JS 层会有多个 ReceiveNotification 事件

3. 如何消除 应用 icon 的角标(badge)

调用 JPushModule.setBadge 方法 如果设为 0,则表示情况角标

JPushModule.setBadge(5, (badgeNumber) => {
  console.log(badgeNumber)
});

4. 开发环境能够收到推送,生产环境收不到推送

5. 自定义消息事件无法触发

6. 点击推送唤起应用的时候 OpenNotificationLaunchApp 不调用

7. 通知在前台展示问题

// iOS 10 Support
- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center willPresentNotification:(UNNotification *)notification withCompletionHandler:(void (^)(NSInteger))completionHandler {
  // Required
  NSDictionary * userInfo = notification.request.content.userInfo;
  if([notification.request.trigger isKindOfClass:[UNPushNotificationTrigger class]]) {
    [JPUSHService handleRemoteNotification:userInfo];
    [[NSNotificationCenter defaultCenter] postNotificationName:kJPFDidReceiveRemoteNotification object:userInfo];
  }
completionHandler(UNNotificationPresentationOptionAlert);  // 需要执行这个方法,选择是否提醒用户,有Badge、Sound、Alert三种类型可以选择设置
}

8. 找不到头文件 RCTJPushModule.h

$(SRCROOT)/../node_modules/jpush-react-native/ios/RCTJPushModule/RCTJPushModule

RN 在 0.40.0 之后 不会自动加入这个路径了,要手动加一下

9. 在 iphone 5 的模拟器编译不通过

JPush SDK 在 3.0.0 及以后版本不再支持 i386 的模拟器了需要在 iphone 5s 以上版本中测试

10. 找不到 jcore-react-native

上一篇 下一篇

猜你喜欢

热点阅读