移动应用推送开发指南

当您开发自有品牌App的消息推送时,请按照本文档的指导来配置移动应用服务,并开发移动应用的推送功能。

前提条件

  • 在控制台产品开发的人机交互页面中,已设置了设备告警规则(例如,门锁开启时给App推送一条消息;或当PM2.5超过200时给App推送一条消息)。具体操作,请参见配置设备告警

  • 已完成自有品牌App的创建。具体操作,请参见创建自有App

背景信息

阿里云移动推送服务为Alibaba Cloud Mobile Push,在线送达率超过98%,承载了双十一超过5000条/秒的消息推送峰值(具体介绍,请参见移动推送)。生活物联网平台基于阿里云移动推送服务,整合了设备管理能力,将设备的消息推送到App上。

配置移动应用推送服务

  1. 进入生活物联网平台控制台

  2. 选择项目名称,在项目主页面,单击已创建的自有App名称。

  3. 进入自有品牌App的SDK和插件页面,单击消息推送对应的未设置

    image

  4. 配置iOS应用的消息推送服务。

    iOS应用的推送服务没有在线推送和离线推送之分,需统一采用苹果官方提供给开发者的推送服务。请您根据以下步骤操作。

    上传ios证书

    1. 单击上传文件,并上传APNs推送证书。

    2. 输入推送证书的密码,并单击验证证书

      只有正确配置了证书和密码,提示验证成功后,才能正常调用iOS推送服务。

      验证证书

    3. 单击测试推送,在弹出的输入框中填入deviceToken信息(获取deviceToken信息,请参见SDK初始化中的didRegisterForRemoteNotificationsWithDeviceToken方法)。

    4. 单击测试,推送一条消息进行测试。

      测试推送

  5. (可选)配置Android离线推送服务。

    Android应用默认支持在线推送,无需额外配置。针对目前市场上的常用移动设备(华为、小米、OPPO、VIVO),平台还提供了Android应用离线推送能力。

    组 674@1x.png

    说明

    以下为三方品牌消息推送大致的配置步骤,仅供您参考,具体操作请根据三方品牌的实际情况来定。

    • 华为

      1. 华为开发者联盟注册App。应用审核通过后,可得到华为的AppID和AppSecret。

      2. 打开华为开发者平台push功能区的消息推送开关。

      3. 在华为开发者平台添加消息回执回调地址:https://amspush-ack.aliyuncs.com/hw/

      4. 在生活物联网控制台消息推送设置页面(如上图所示),配置华为AppID和AppSecret。

      重要

      确保您在华为控制台激活了推送通道功能,且您的App处于审核中或通过审核的状态(不能为草稿状态),否则通道不会生效。

    • 小米

      1. 小米开放平台注册App,得到相应的小米AppID、小米AppKey、小米AppSecret。

      2. 打开小米开发者平台push功能区的消息推送开关。

      3. 在生活物联网控制台消息推送设置页面,配置小米AppSecret。

    • OPPO

      1. 在OPPO市场上架应用,且应用评级为A(评级为A才能使用推送服务,具体政策可咨询OPPO客服)。

      2. OPPO开放平台应用配置注册OPPO企业开发者账号,得到相应的AppKey和MasterSecret。

      3. 在OPPO开放平台添加应用并开通OPPO推送服务。

      4. 在生活物联网控制台消息推送设置页面,设置您的OppoAppkey和OppoMasterSecret。

    • 魅族

      1. Flyme 开放平台注册魅族账号及创建应用。审核通过后,能够得到应用的AppID和AppSecret。

      2. 在Flyme控制台上设置回执地址http://agoo-ack.m.taobao.com/mz/https://agoo-ack.m.taobao.com/mz/

      3. 在生活物联网控制台消息推送设置页面设置魅族应用的AppID和AppSecret。

    • VIVO

      说明

      国际站的自有品牌App中,暂不支持VIVO推送。

      1. VIVO开放平台注册VIVO账号及创建应用(需要使用企业开发者账号)。审核通过后,您可以得到应用的AppID、AppKey和AppSecret。

      2. 在生活物联网控制台消息推送设置页面设置VIVO应用的AppID、AppKey以及AppSecret。

开发应用推送

请您参照以下SDK开发移动应用推送功能。

可推送消息说明

生活物联网平台提供的SDK支持推送的消息种类分为以下两类。

  • 设备告警消息

    在控制台中配置告警消息,当设备触发该消息规则时,会主动给App推送一条消息。

    推送范围:该设备的所有用户,包括设备的管理者、以及设备的被分享者。

    配置方式:在平台人机交互设备告警中,配置设备告警信息。具体操作,请参见配置设备告警

  • 设备分享消息

    当设备的管理员(即ownerName,以下示例中的甲)将设备分享给其他用户(即memberName,以下示例中的乙)时,平台会主动给App的用户推送设备分享相关的消息。

    • ownerName:设备拥有者别名标识(例如用户名称)

    • memberName:被分享者(或非拥有者)别名标识(例如用户名称)

    设备分享相关的消息包括以下六种类型。在设备分享过程中,分别收到的消息以示例说明如下。

    消息类型

    设备分享的场景描述

    设备拥有者向其他用户发起设备分享

    甲向乙发起设备分享时,乙收到消息:ownerName+“向您共享设备”

    设备拥有者取消设备分享

    甲向乙取消设备分享时,乙收到消息:ownerName+“取消了设备共享”

    被分享者接收分享消息

    乙接收甲的设备分享时,甲收到消息:memberName+“添加了您的设备”

    被分享者拒绝分享消息

    乙拒绝甲的设备分享时,甲收到消息:memberName+“取消了设备共享”

    设备被抢占

    乙抢占了甲的设备时,甲收到消息:memberName+“抢占了您的设备”

    发起者已解绑

    乙接收甲分享的设备后,甲取消设备分享时,乙收到消息:ownerName+“删除了您的设备”

    说明

    Android应用中,仅“设备拥有者向其他用户发起设备分享”支持离线推送和在线推送,其余设备分享相关的消息都仅支持在线推送。