移動應(yīng)用推送開發(fā)指南
當您開發(fā)自有品牌App的消息推送時,請按照本文檔的指導(dǎo)來配置移動應(yīng)用服務(wù),并開發(fā)移動應(yīng)用的推送功能。
前提條件
在控制臺產(chǎn)品開發(fā)的人機交互頁面中,已設(shè)置了設(shè)備告警規(guī)則(例如,門鎖開啟時給App推送一條消息;或當PM2.5超過200時給App推送一條消息)。具體操作,請參見配置設(shè)備告警。
已完成自有品牌App的創(chuàng)建。具體操作,請參見創(chuàng)建自有App。
背景信息
阿里云移動推送服務(wù)為Alibaba Cloud Mobile Push,在線送達率超過98%,承載了雙十一超過5000條/秒的消息推送峰值(具體介紹,請參見移動推送)。生活物聯(lián)網(wǎng)平臺基于阿里云移動推送服務(wù),整合了設(shè)備管理能力,將設(shè)備的消息推送到App上。
配置移動應(yīng)用推送服務(wù)
選擇項目名稱,在項目主頁面,單擊已創(chuàng)建的自有App名稱。
進入自有品牌App的SDK和插件頁面,單擊消息推送對應(yīng)的未設(shè)置。
配置iOS應(yīng)用的消息推送服務(wù)。
iOS應(yīng)用的推送服務(wù)沒有在線推送和離線推送之分,需統(tǒng)一采用蘋果官方提供給開發(fā)者的推送服務(wù)。請您根據(jù)以下步驟操作。
單擊上傳文件,并上傳APNs推送證書。
輸入推送證書的密碼,并單擊驗證證書。
只有正確配置了證書和密碼,提示驗證成功后,才能正常調(diào)用iOS推送服務(wù)。
單擊測試推送,在彈出的輸入框中填入deviceToken信息(獲取deviceToken信息,請參見SDK初始化中的didRegisterForRemoteNotificationsWithDeviceToken方法)。
單擊測試,推送一條消息進行測試。
(可選)配置Android離線推送服務(wù)。
Android應(yīng)用默認支持在線推送,無需額外配置。針對目前市場上的常用移動設(shè)備(華為、小米、OPPO、VIVO),平臺還提供了Android應(yīng)用離線推送能力。
說明以下為三方品牌消息推送大致的配置步驟,僅供您參考,具體操作請根據(jù)三方品牌的實際情況來定。
華為
在華為開發(fā)者聯(lián)盟注冊App。應(yīng)用審核通過后,可得到華為的AppID和AppSecret。
打開華為開發(fā)者平臺push功能區(qū)的消息推送開關(guān)。
在華為開發(fā)者平臺添加消息回執(zhí)回調(diào)地址:
https://amspush-ack.aliyuncs.com/hw/
。在生活物聯(lián)網(wǎng)控制臺消息推送設(shè)置頁面(如上圖所示),配置華為AppID和AppSecret。
重要確保您在華為控制臺激活了推送通道功能,且您的App處于審核中或通過審核的狀態(tài)(不能為草稿狀態(tài)),否則通道不會生效。
小米
在小米開放平臺注冊App,得到相應(yīng)的小米AppID、小米AppKey、小米AppSecret。
打開小米開發(fā)者平臺push功能區(qū)的消息推送開關(guān)。
在生活物聯(lián)網(wǎng)控制臺消息推送設(shè)置頁面,配置小米AppSecret。
OPPO
在OPPO市場上架應(yīng)用,且應(yīng)用評級為A(評級為A才能使用推送服務(wù),具體政策可咨詢OPPO客服)。
在OPPO開放平臺應(yīng)用配置注冊O(shè)PPO企業(yè)開發(fā)者賬號,得到相應(yīng)的AppKey和MasterSecret。
在OPPO開放平臺添加應(yīng)用并開通OPPO推送服務(wù)。
在生活物聯(lián)網(wǎng)控制臺消息推送設(shè)置頁面,設(shè)置您的OppoAppkey和OppoMasterSecret。
魅族
在Flyme 開放平臺注冊魅族賬號及創(chuàng)建應(yīng)用。審核通過后,能夠得到應(yīng)用的AppID和AppSecret。
在Flyme控制臺上設(shè)置回執(zhí)地址http://agoo-ack.m.taobao.com/mz/和https://agoo-ack.m.taobao.com/mz/。
在生活物聯(lián)網(wǎng)控制臺消息推送設(shè)置頁面設(shè)置魅族應(yīng)用的AppID和AppSecret。
VIVO
說明國際站的自有品牌App中,暫不支持VIVO推送。
在VIVO開放平臺注冊VIVO賬號及創(chuàng)建應(yīng)用(需要使用企業(yè)開發(fā)者賬號)。審核通過后,您可以得到應(yīng)用的AppID、AppKey和AppSecret。
在生活物聯(lián)網(wǎng)控制臺消息推送設(shè)置頁面設(shè)置VIVO應(yīng)用的AppID、AppKey以及AppSecret。
開發(fā)應(yīng)用推送
請您參照以下SDK開發(fā)移動應(yīng)用推送功能。
Android:請參見移動應(yīng)用推送SDK。
iOS:請參見移動應(yīng)用推送SDK。
可推送消息說明
生活物聯(lián)網(wǎng)平臺提供的SDK支持推送的消息種類分為以下兩類。
設(shè)備告警消息
在控制臺中配置告警消息,當設(shè)備觸發(fā)該消息規(guī)則時,會主動給App推送一條消息。
推送范圍:該設(shè)備的所有用戶,包括設(shè)備的管理者、以及設(shè)備的被分享者。
配置方式:在平臺人機交互的設(shè)備告警中,配置設(shè)備告警信息。具體操作,請參見配置設(shè)備告警。
設(shè)備分享消息
當設(shè)備的管理員(即ownerName,以下示例中的甲)將設(shè)備分享給其他用戶(即memberName,以下示例中的乙)時,平臺會主動給App的用戶推送設(shè)備分享相關(guān)的消息。
ownerName:設(shè)備擁有者別名標識(例如用戶名稱)
memberName:被分享者(或非擁有者)別名標識(例如用戶名稱)
設(shè)備分享相關(guān)的消息包括以下六種類型。在設(shè)備分享過程中,分別收到的消息以示例說明如下。
消息類型
設(shè)備分享的場景描述
設(shè)備擁有者向其他用戶發(fā)起設(shè)備分享
甲向乙發(fā)起設(shè)備分享時,乙收到消息:
ownerName+“向您共享設(shè)備”
。設(shè)備擁有者取消設(shè)備分享
甲向乙取消設(shè)備分享時,乙收到消息:
ownerName+“取消了設(shè)備共享”
。被分享者接收分享消息
乙接收甲的設(shè)備分享時,甲收到消息:
memberName+“添加了您的設(shè)備”
。被分享者拒絕分享消息
乙拒絕甲的設(shè)備分享時,甲收到消息:
memberName+“取消了設(shè)備共享”
。設(shè)備被搶占
乙搶占了甲的設(shè)備時,甲收到消息:
memberName+“搶占了您的設(shè)備”
。發(fā)起者已解綁
乙接收甲分享的設(shè)備后,甲取消設(shè)備分享時,乙收到消息:
ownerName+“刪除了您的設(shè)備”
。說明Android應(yīng)用中,僅“設(shè)備擁有者向其他用戶發(fā)起設(shè)備分享”支持離線推送和在線推送,其余設(shè)備分享相關(guān)的消息都僅支持在線推送。