开发者社区 问答 正文

应用研发平台EMAS是这样的先后顺序吗?

应用研发平台EMAS PushServiceFactory.init(this) 和 辅助通道的register都要在application吗?然后ali的register放在获得授权之后?是这样的先后顺序吗?

展开
收起
2401。 2023-09-02 10:47:36 33 发布于浙江 分享
分享
版权
3 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/article/1027386?spm=a2c6h.14164896.0.0.619c3c61n0QbKq
    此回答整理自“应用研发平台EMAS开发者交流群”。

    2023-09-04 21:57:25 发布于浙江 举报
    赞同 评论

    评论

    全部评论 (0)

    登录后可评论
  • 北京阿里云ACE会长

    应用研发平台 EMAS 中,PushServiceFactory.init(this) 和辅助通道的 register 方法的调用顺序应该是:

    1. 首先,在应用启动时调用 PushServiceFactory.init(this) 方法进行初始化。
    2. 然后,在用户同意接收推送通知后,调用 register 方法来注册通道。这里可以包括主通道和辅助通道的注册。
    3. 在注册通道之前,可以先调用 isPushPermissionGranted() 方法来检查用户是否已经授权接收推送通知。如果用户还没有授权,可以提示用户进行授权,并在授权后再调用 register 方法。
    4. 最后,在获得阿里云推送授权后,调用阿里云的 register 方法来注册阿里云推送服务。
      这样的先后顺序可以确保推送通知的隐私合规性,并保证推送服务能够正常运行。在实现推送通知的延迟初始化和注册时,应该遵循相关的隐私合规要求,以确保用户的隐私权益得到充分保护。
    2023-09-03 07:45:55 发布于北京 举报
    赞同 评论

    评论

    全部评论 (0)

    登录后可评论
  • EMAS PushServiceFactory.init(this) 和 AliPushManager.register() 的调用顺序确实取决于您的应用程序需求。一般来说,它们可以在不同的生命周期阶段被调用。以下是一个常见的调用顺序示例:

    1. onCreate 方法中调用 EMAS PushServiceFactory.init(this),以便初始化推送服务。

    2. onResume 方法中调用 EMAS PushServiceFactory.register(TAG),以便注册您的应用程序到EMAS服务器。这里的TAG是一个自定义的标记,用于区分不同类型的推送消息。

    3. 当用户同意接收推送通知后,在 onResume 方法中调用 AliPushManager.registerDevice(regId),以便将设备注册到阿里云服务器。这里的 regId 是阿里云服务器分配给您的设备的唯一标识符。

    4. onPause 方法中调用 EMAS PushServiceFactory.unregister(),以便取消注册您的应用程序到EMAS服务器。

    5. onDestroy 方法中调用 EMAS PushServiceFactory.stop(),以便停止推送服务。

    2023-09-02 10:59:44 发布于河北 举报
    赞同 评论

    评论

    全部评论 (0)

    登录后可评论