首先是ios推送流程,這篇文章有了比較詳細的描述,大家可以了解一下
ios推送流程
而本文主要是針對的需求是在已擁有自己的推送伺服器的情況下,怎麼在js
端獲取已註冊的device token
,並將其交由後台去儲存。今後的推送流程就是,當有訊息需要推送時,後台呼叫推送伺服器相應介面傳遞訊息,推送伺服器將訊息推給apns
(蘋果推送伺服器)。apns再通過註冊的device token
推給相應手機。
如果想直接整合三方推送平台的話,可參考以下文章
react-native-ios極光推送
將node_modules/react-native/libraries/pushnotificationios/rctpushnotification.xcodeproj
檔案拖到xcode介面的library中
並在xcode的link binary with libraries
中新增librctpushnotification.a
1.開啟推送功能
2.開啟後台推送
在方法
中加入以下**(目的:根據系統版本註冊devicetoken
)
if ([[uidevice currentdevice].systemversion floatvalue] >= 10.0) ];
} else
}];}else
if ([[uidevice currentdevice].systemversion floatvalue] >8.0)else
if ([[uidevice currentdevice].systemversion floatvalue] < 8.0)
// 註冊獲得device token
在上個方法後新增以下方法
// required to register for notifications在react-native的js中獲取推送相應引數// required for the register event.
// required for the notification event.
// required for the localnotification event.
1.匯入pushnotificationios
import pushnotificationios from
'react-native';
2.新增相應監聽事件
//介面載入完成時 註冊監聽事件
componentdidmount()
//介面即將消失時 登出監聽事件
componentwillunmount()
//receive remote notification
_onnotification(notification)
//receive local notification
_onlocalnotification(notification)
//獲取device token
_register(devicetoken)
3.將裝置device token 交由後台處理
這個可能要具體問題具體分析,根據相應業務需求.
但device token 主要用途是當provider(本地推送伺服器)
需要推送訊息給apns
(蘋果推送伺服器)時,傳遞相應的device token
.apns
找到裝置編號,進行推送。
React Native iOS環境搭建
1.安裝homebrew homebrew主要用於安裝後面需要安裝的watchman flow 開啟mac的終端,輸入如下命令 ruby e curl fssl 2.安裝nvm和nodejs nvm是用於nodejs版本管理的工具,用於安裝nodejs。對於nvm應該可以使用brew直接安裝,但是我...
React Native iOS環境搭建
react native 開發環境配置 前段時間react native for android發布,感覺react native會越來越多的公司開始研究 使用。所以週六也抽空搭建了ios的開發環境,以便以後利用空閒的時間能夠學習一下。廢話不多說了,下面簡單的列出步驟吧。1.安裝homebrew h...
React Native iOS環境搭建 高階版
前段時間react native for android發布,感覺react native會越來越多的公司開始研究 使用。所以也抽空搭建了ios的開發環境,以便以後利用空閒的時間能夠學習一下。廢話不多說了,下面簡單的列出步驟吧。1.安裝homebrew homebrew主要用於安裝後面需要安裝的wa...