日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

集成 jpush-react-native 常见问题汇总 ( iOS 篇)

發(fā)布時間:2025/3/20 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 集成 jpush-react-native 常见问题汇总 ( iOS 篇) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

給 iOS 應(yīng)用添加推送功能是一件比較麻煩的事情,本篇文章收集了集成 jpush-react-native 的常見問題,目的是為了幫助用戶更好地排查問題

1.收不到推送

  • 確保是在真機(jī)上測試,而不是在模擬器

  • 自己的應(yīng)用已經(jīng)在 Apple developer 給應(yīng)用配置推送功能,創(chuàng)建推送證書 (并且保證
    bundle id 與 Apple developer 上的是一致的)如果之前沒有接觸過推送證書建議看視頻來 官方集成視頻

  • 能夠獲取deviceToken 但是收不到推送, 如果是使用 xcode 8,檢查 (Project -> Target ->Capabilities ) Push Notification 選項是否已經(jīng)點開,如果沒有需要點開

2.收到一條通知 JS 層會有多個 ReceiveNotification 事件

  • 升級 jpush-react-native 到最新版本

  • 有沒有在合適的地方 remove ReceiveNotification 事件,如果多次監(jiān)聽該事件會導(dǎo)致重復(fù)接收

3. 如何消除 應(yīng)用 icon 的角標(biāo)( badge )

調(diào)用 JPushModule.setBadge 方法 如果設(shè)為 0,則表示情況角標(biāo)

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

4.開發(fā)環(huán)境能夠收到推送,生產(chǎn)環(huán)境收不到推送

  • 如果是通過控制臺發(fā)送的推送,檢查環(huán)境選擇是否正確

  • 如果是調(diào)用 REST api 發(fā)送通知,請檢查推送參數(shù)

  • 手機(jī)應(yīng)用是否是仍然是 開發(fā)環(huán)境, 如果不是請打包 Ad Hoc 來測試

5.自定義消息事件無法觸發(fā)

  • 如果通過控制臺發(fā)送的自定義消息,確保選擇的是自定義消息,而不是通知

  • 檢查是否監(jiān)聽了 networkDidReceiveMessage 事件

6.點擊推送喚起應(yīng)用的時候 OpenNotification 不調(diào)用

  • 升級 jpush-react-native 到最新版本(舊版本還沒做緩存處理,新版本已修復(fù))

  • 檢查監(jiān)聽 OpenNotification 的操作是否異步調(diào)用,有用戶應(yīng)為在異步回調(diào)中才執(zhí)行監(jiān)聽操作,導(dǎo)致事件已經(jīng)上拋到 js 層但 js 層還沒執(zhí)行監(jiān)聽操作的問題

7.通知在前臺展示問題

  • iOS 10 開始允許通知在前臺展示這個地方在 Native 代碼中控制

    // iOS 10 Support -(void)jpushNotificationCenter:(UNUserNotificationCenter *)center willPresentNotification:(UNNotification *)notification withCompletionHandler:(void (^)(NSInteger))completionHandler {// RequiredNSDictionary * userInfo = notification.request.content.userInfo;if([notification.request.trigger isKindOfClass:[UNPushNotificationTrigger class]]) {[JPUSHService handleRemoteNotification:userInfo];[[NSNotificationCenter defaultCenter] postNotificationName:kJPFDidReceiveRemoteNotification object:userInfo];} completionHandler(UNNotificationPresentationOptionAlert); // 需要執(zhí)行這個方法,選擇是否提醒用戶,有 Badge、Sound、Alert 三種類型可以選擇設(shè)置 }
  • iOS 10 之前是系統(tǒng)控制,應(yīng)用在前臺推送不展示

8.找不到頭文件 RCTJPushModule.h

  • 在 iOS 工程中如果找不到頭文件可能要在 TARGETS-> BUILD SETTINGS -> Search Paths -> Header Search Paths 添加如下如路徑

    $(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

  • 在 jpush-react-native 1.4.4 以后版本 需要通知安裝 jcore-react-native 才能正常使用


作者:HuminiOS - 極光( JPush 為極光團(tuán)隊賬號,歡迎關(guān)注)

原文:集成 jpush-react-native 常見問題匯總 ( iOS 篇)

知乎專欄:極光日報

總結(jié)

以上是生活随笔為你收集整理的集成 jpush-react-native 常见问题汇总 ( iOS 篇)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。