阿里移动推送(Alibaba Cloud Mobile Push)是基于大数据的移动智能推送服务,帮助App快速集成移动推送的功能。在实现高效、精确、实时的移动推送的同时,降低了开发成本并提高了用户活跃度和应用的留存率。
初始化
使用方法
告警功能
告警功能依赖设备和用户绑定,用户和设备的绑定已经封装在SDK初始化中,您只需关注告警功能的业务逻辑即可。
消息类型说明
移动应用推送支持以下两种类型的消息下发。
- 通知类型
服务器下发的通知,SDK会自动处理,根据下发配置标题和内容自动弹出通知,无需在MyMessageRecevier中添加业务代码。
- 消息类型
服务器下发的消息可以在初始化中创建的
MyMessageReceiver
对应的回调方法中获得。如需弹出通知,需要自己根据下发的内容在此模式下弹出通知。
三方辅助推送通道
当App不在运行状态时,通过三方辅助推送通道可以将消息离线推送到手机。该推送通道无需额外初始化,您只需申请和配置好三方辅助的推送通道即可,详细参见移动应用推送开发指南。
目前支持三方辅助推送通道的手机有:小米、华为、VIVO 、OPPO、FCM。
- 小米、OPPO、FCM的三方推送:在初始化时配置参数,详细请参见SDK初始化。
- 华为、VIVO的三方推送:需要在AndroidManifest.xml配置如下相关信息。
说明 测试华为离线推送功能时,须确保测试App的签名与提交至华为推送控制台的App签名保持一致。
<!-- huawei push start --> <meta-data android:name="com.huawei.hms.client.appid" android:value="your huawei push appid" /> <!-- huawei push end --> <!-- vivo push start --> <meta-data android:name="com.vivo.push.api_key" android:value="your vivo push api_key" /> <meta-data android:name="com.vivo.push.app_id" android:value="your vivo push app id" /> <!-- vivo push start -->
混淆配置
在proguard-rules.pro文件中,加入以下代码,排除不需要被混淆的类和方法。
-keepclasseswithmembernames class ** {
native <methods>;
}
-keepattributes Signature
-keep class sun.misc.Unsafe { *; }
-keep class com.taobao.** {*;}
-keep class com.alibaba.** {*;}
-keep class com.alipay.** {*;}
-keep class com.ut.** {*;}
-keep class com.ta.** {*;}
-keep class anet.**{*;}
-keep class anetwork.**{*;}
-keep class org.android.spdy.**{*;}
-keep class org.android.agoo.**{*;}
-keep class android.os.**{*;}
-dontwarn com.taobao.**
-dontwarn com.alibaba.**
-dontwarn com.alipay.**
-dontwarn anet.**
-dontwarn org.android.spdy.**
-dontwarn org.android.agoo.**
-dontwarn anetwork.**
-dontwarn com.ut.**
-dontwarn com.ta.**