Android SDK中CloudPushService应该怎样初始化?

问题详述

CloudPushService应该如何初始化,初始化的时机有限制吗?可以在任何时间任何组件中都可以初始化吗?

问题解答

必须在Application中调用cloudpushservice.register进行初始化,而不要在Activity中调用。在Activity中调用,将无法有效启动推送的幽灵进程,会大大减少消息的到达率。另外,在未来,我们不确保你使用Activity启动的推送功能会是正常的。

在调用register接口时,你可以传入一个回调对象,即com.alibaba.sdk.android.push.CommonCallback,如果注册成功,及一次性回调CommonCallback.onSuccess,如果注册失败,会回调onFailed,启动带有错误码和错误信息。错误回调之后,我们会重试注册,并用相同的对象,继续给到你回调结果。 (所以错误回调,会有多次,不断重试,直到最后一次成功回调为止。)

失败的原因请参考错误码列表。