簡要:本系列文章講會對expo進行全面的介紹,本人從2017年6月份接觸expo以來,對expo的研究斷斷續續,一路走來將近10個月,廢話不多說,接下來你看到內容,講全部來與官網 我猜去全部機翻+個人修改補充+demo測試的形式,對expo進行一次大補血!歡迎加入expo興趣學習交流群:597732 ...
簡要:本系列文章講會對expo進行全面的介紹,本人從2017年6月份接觸expo以來,對expo的研究斷斷續續,一路走來將近10個月,廢話不多說,接下來你看到內容,講全部來與官網
我猜去全部機翻+個人修改補充+demo測試的形式,對expo進行一次大補血!歡迎加入expo興趣學習交流群:597732981
【之前我寫過一些列關於expo和rn入門配置的東i西,大家可以點擊這裡查看:從零學習rn開發】
相關文章:
Expo大作戰(一)--什麼是expo,如何安裝expo clinet和xde,xde如何使用
Expo大作戰(二)--expo的生命周期,expo社區交流方式,expo學習必備資源,開發使用expo時關註的一些問題
Expo大作戰(三)--針對已經開發過react native項目開發人員有針對性的介紹了expo,expo的局限性,開發時項目選型註意點等
Expo大作戰(四)--快速用expo構建一個app,expo中的關鍵術語
Expo大作戰(五)--expo中app.json 文件的配置信息
Expo大作戰(六)--expo開發模式,expo中exp命令行工具,expo中如何查看日誌log,expo中的調試方式
Expo大作戰(七)--expo如何使用Genymotion模擬器
Expo大作戰(八)--expo中的publish以及expo中的link,對link這塊東西沒有詳細看,大家可以來和我交流
寫在二十三章以後的話,之前的翻譯,不管如何,好與不好,終究是告一段落,也把expo基礎理論的東西又深入的理解了一遍,後續expo大作戰系列將主要介紹expo sdk的api。
通知 Notification
提供對遠程通知(也稱為推送通知)和本地通知(計劃和即時)相關功能的訪問。
訂閱通知
Expo.Notifications.addListener(listener)
參數
listener(function) - 當收到或選擇遠程或本地通知時使用通知對象調用的回調。返回
一個EventSubscription對象,當您想要取消訂閱偵聽器時,您可以調用remove()。相關類型
EventSubscription
從addListener返回。
- remove()(function) - 從將來的通知中取消訂閱偵聽器。通知
收到通知時傳遞給每個事件偵聽器的對象:
- origin (string) - 選擇或接收。如果用戶點擊通知,則選擇該選項,如果在用戶進入應用程式時收到通知,則選擇該選項。
- data (object) - 通知附帶的任何數據。
- remote(boolean) - 如果通知是推送通知,則為true;如果是本地通知,則為false。
通知
Expo.Notifications.getExpoPushTokenAsync()
返回
返回解析為標記字元串的Promise。該令牌可以提供給expo通知後端,以向該設備發送推送通知。請閱讀推送通知指南。
Expo.Notifications.presentLocalNotificationAsync(localNotification)
立即觸發本地通知。參數
localNotification(object) - 具有LocalNotification中所述屬性的對象。返回
承諾解析為唯一的通知ID。
Expo.Notifications.scheduleLocalNotificationAsync(localNotification,schedulingOptions)
安排一個本地通知,以便在將來的某個特定時間或在給定的時間間隔內觸發。參數
localNotification(對象) -具有LocalNotification中所述屬性的對象。
schedulingOptions(object) -
描述何時應該觸發通知的對象。
- time (date or number) - 表示何時在Unix紀元時間觸發通知或數字的Date對象。例如:(new Date())。getTime()+ 1000從現在開始是一秒。
- 重覆(可選)(字元串) - “分鐘”,“小時”,“日”,“星期”,“月”或“年”。(repeat (optional) (string) —
'minute'
,'hour'
,'day'
,'week'
,'month'
, or'year'
.)- (僅限Android)intervalMs(可選)(number) - 以毫秒為單位重覆間隔
返回
承諾解析為唯一的通知ID。Expo.Notifications.dismissNotificationAsync(localNotificationId)
僅限Android。使用給定的ID取消通知。參數
localNotificationId(number) - 從scheduleLocalNotificationAsync或presentLocalNotificationAsync返回的分配給通知的唯一標識。Expo.Notifications.dismissAllNotificationsAsync()
僅限Android。清除應用已呈現的所有通知。Expo.Notifications.cancelScheduledNotificationAsync(localNotificationId)
取消與給定ID相對應的預定通知。參數
localNotificationId(number) - 從scheduleLocalNotificationAsync或presentLocalNotificationAsync返回的分配給通知的唯一標識。Expo.Notifications.cancelAllScheduledNotificationsAsync()
取消所有預定的通知。相關類型(Related types)
LocalNotification
用於描述您想要呈現或計劃的本地通知的對象。title (string) - 通知的標題文本
body (string)) - 通知的正文文本。
data (optional) (object) - 通知附帶的任何數據。
ios (optional) (object) - 特定於iOS的通知配置。
- sound (optional) (boolean) - 如果為true,則播放聲音。預設值:false。
android (optional) (object) - 特定於Android的通知配置。
- sound (optional) (boolean) - 如果為true,則播放聲音。預設值:false。
- icon (optional) (string) - 要在通知抽屜中顯示的圖標的URL。
- color (optional) (string) - 通知抽屜中通知圖標的顏色。
- color (optional) (string) - android可根據優先順序顯示通知,例如高優先順序通知可能會顯示為單向通知。
- sticky (optional) (boolean) - 如果為true,通知將變得粘稠並且不會被用戶忽略。通知必須以編程方式解除。預設值:false。
- vibrate (optional) (boolean or array) - 如果為true,則振動設備。可以提供陣列來指定振動模式,例如, - [0,500]。
- link (optional) (string) - 選擇通知時打開的外部鏈接。
應用圖標徽章編號(iOS)(App Icon Badge Number (iOS))
Expo.Notifications.getBadgeNumberAsync()
返回
返回可解析為應用程式圖標上的徽章中顯示的數字的承諾。當沒有徽章時(或在Android上)時,此方法返回零。Expo.Notifications.setBadgeNumberAsync(
number
)將應用程式圖標徽章中顯示的數字設置為給定數字。將該數字設置為零將清除徽章以及iOS設備通知中心的通知列表。在Android上,這個方法什麼都不做。
僅限獨立應用程式
Expo.Notifications.getDevicePushTokenAsync(config)
註意:大多數人不需要使用這個。使用getExpoPushTokenAsync更容易,除非您有特定的理由需要實際的設備令牌。我們也不保證iOS和Android客戶端將繼續期待相同的推送通知有效載荷格式。返回可用於其他推送通知服務的本機APNS或GCM令牌。
參數
- config(object) - 包含以下欄位的對象:
- gcmSenderId(字元串) - GCM發件人ID。
返回
承諾解析為具有以下欄位的對象:
- type (string) - “apns”或“gcm”。
- data (string) - 推送令牌作為字元串。
下一張繼續介紹,這一篇主要介紹了:expo sdk api之Noifications!,歡迎大家關註我的微信公眾號,這篇文章是否被大家認可,我的衡量標準就是公眾號粉絲增長人數。歡迎大家轉載,但必須保留本人博客鏈接!