README.md
NOTE: 重要通知如下
maven{
url 'https://oss.jfrog.org/artifactory/oss-snapshot-local'
}
NOET: 使用jar集成的建议接入此版本,建议最新版接入此版本
如果你对pushSDK的实现原理感兴趣,请点击这里 ,另外这个工程也提供的源码,有兴趣的同学可以star一下!

对于windows phone 7手机,推送是由系统统一管理的,可以理解为,虽然有很多程序有推送服务,但由于统一管理,只有一个长连接,手机收到消息后,再根据消息接收的程序,出现不同的提示。腾讯信用客服人员表示:“请放心,我们将针对使用过信用服务的用户,立即提供腾讯信用使用入口,请及时关注腾讯信用推送消息。腾讯信用客服人员表示:请放心,我们将针对使用过信用服务的用户,立即提供腾讯信用使用入口,请及时关注腾讯信用推送消息。
该 SDK 以 Android Service 方式运行魅族push,独占一个进程,该 Service 自己维护与推送服务器的长链接。如果一款手机安装了多个集成了 SDK 的手机应用,则只有一个 service 实例运行,不会每个应用都会开启一个后台 service,而是采用多个应用共享一个Push通道的方式,这就解决了长链接复用的问题,节省了对流量、电量的浪费。使用该 SDK 只需要关心 PushManager 提供的API,与 MzPushMessageReceiver 提供的回调接口以及相应的配置即可。
PushSDK3.0以后的版本使用了最新的魅族插件发布aar包,因此大家可以直接引用aar包;对于一些通用的权限配置,工程混淆,应用可以不再配置了,现有你只需要在你的应用中配置相应的消息接收的receiver
NOTE: 我们已经将pushsdk发布到jcenter,你只需如下配置即可
dependencies {
compile 'com.meizu.flyme.internet:push-internal:3.6.+@aar'
}

NOTE: 加入@aar指定编译下载aar,不默认使用jar;如果你需要使用jar,请参考
NOTE: 如果由于各种原因不能使用jcenter依赖,还可以从以下链接下载sdk相关支持包
<!-- 兼容flyme5.0以下版本,魅族内部集成pushSDK必填,不然无法收到消息-->
<uses-permission android:name="com.meizu.flyme.push.permission.RECEIVE"></uses-permission>
<permission android:name="包名.push.permission.MESSAGE" android:protectionLevel="signature"/>
<uses-permission android:name="包名.push.permission.MESSAGE"></uses-permission>
<!-- 兼容flyme3.0配置权限-->
<uses-permission android:name="com.meizu.c2dm.permission.RECEIVE" />
<permission android:name="你的包名.permission.C2D_MESSAGE"
android:protectionLevel="signature"></permission>
<uses-permission android:name="你的包名.permission.C2D_MESSAGE"/>
<!-- push应用定义消息receiver声明 --> <receiver android:name="包名.MyPushMsgReceiver"> <intent-filter> <!-- 接收push消息 --> <action android:name="com.meizu.flyme.push.intent.MESSAGE" /> <!-- 接收register消息 --> <action android:name="com.meizu.flyme.push.intent.REGISTER.FEEDBACK" /> <!-- 接收unregister消息--> <action android:name="com.meizu.flyme.push.intent.UNREGISTER.FEEDBACK"/> <!-- 兼容低版本Flyme3推送服务配置 --> <action android:name="com.meizu.c2dm.intent.REGISTRATION" /> <action android:name="com.meizu.c2dm.intent.RECEIVE" /> <category android:name="包名"></category> </intent-filter> </receiver>
NOTE: 包名填写你配置的的pushReceiver所在包名即可!

public class MyPushMsgReceiver extends MzPushMessageReceiver {
@Override
@Deprecated
public void onRegister(Context context, String pushid) {
//调用PushManager.register(context)方法后,会在此回调注册状态
//应用在接受返回的pushid
}
@Override
public void onMessage(Context context, String s) {
//接收服务器推送的透传消息
}
@Override
@Deprecated
public void onUnRegister(Context context, boolean b) {
//调用PushManager.unRegister(context)方法后,会在此回调反注册状态
}
//设置通知栏小图标
@Override
public PushNotificationBuilder onUpdateNotificationBuilder(PushNotificationBuilder pushNotificationBuilder) {
//重要,详情参考应用小图标自定设置
pushNotificationBuilder.setmStatusbarIcon(R.drawable.mz_push_notification_small_icon);
}
@Override
public void onPushStatus(Context context,PushSwitchStatus pushSwitchStatus) {
//检查通知栏和透传消息开关状态回调
}
@Override
public void onRegisterStatus(Context context,RegisterStatus registerStatus) {
//调用新版订阅PushManager.register(context,appId,aey)回调
}
@Override
public void onUnRegisterStatus(Context context,UnRegisterStatus unRegisterStatus) {
//新版反订阅回调
}
@Override
public void onSubTagsStatus(Context context,SubTagsStatus subTagsStatus) {
//标签回调
}
@Override
public void onSubAliasStatus(Context context,SubAliasStatus subAliasStatus) {
//别名回调
}
@Override
public void onNotificationArrived(Context context, MzPushMessage mzPushMessage) {
//通知栏消息到达回调,flyme6基于android6.0以上不再回调
}
@Override
public void onNotificationClicked(Context context, MzPushMessage mzPushMessage) {
//通知栏消息点击回调
}
@Override
public void onNotificationDeleted(Context context, MzPushMessage mzPushMessage) {
//通知栏消息删除回调;flyme6基于android6.0以上不再回调
}
}
3、tabbar:tab栏配置,配置tab栏背景色及出现位置,上边框的颜色(目前只支持黑或白),文字颜色及文字选中颜色,最核心的配置是list即tab栏的列表,官方规定最少2个,最多5个魅族push,每个列表项目可配置页面路径、文字、图标及选中时图标的地址。messagebox对话框是比较常用的一个信息对话框,其不仅能够定义显示的信息内容、信息提示图标,而且可以定义按钮组合及对话框的标题,是一个功能齐全的信息对话框信息提示图标,而且可以定义按钮组合及对话框的标题,是一个功能齐全的信息对框。全新touchwiz界面改动简介:大量应用图标重绘,下拉快捷栏通知图标改动,蓝光过滤模式加入快捷图标,应用栏搜索框直接显示,应用列表模糊效果加入,设置界面向android n靠拢,rom存储管理加强,电话应用界面改进,将备忘录与s笔记合应用并为笔记应用。
/**
* 获取smallicon
* */
public void onUpdateNotificationBuilder(PushNotificationBuilder pushNotificationBuilder){
//设置通知栏弹出的小图标
pushNotificationBuilder.setmStatusbarIcon(R.drawable.mz_push_notification_small_icon);
};
Note: Flyme6新的通知栏中心需要按照名称来获取状态栏Icon,你需要在相应的drawable不同分辨率文件夹下放置一个名称为mz_push_notification_small_icon的状态栏图标文件,请确保名称正确,否则将无法正确显示你应用的状态栏图标
Note: 至此pushSDK 已经集成完毕,现在你需要在你的Application中调用新版的方法

魅族推送只适用于Flyme系统,因此可以先行判断是否为魅族机型,再进行订阅,避免在其他机型上出现兼容性问题
if(MzSystemUtils.isBrandMeizu(this)){
PushManager.register(this, APP_ID, APP_KEY);
}
并在你的Receiver中成功回调onRegisterStatus(RegisterStatus registerStatus)方法就可以了,你现在可以到 找到你的应用推送消息就可以了.
以下内容是pushSDK提供的api汇总,具体功能详见具体说明,请根据需求选用合适的功能
接口名称接口说明使用建议是否已经废弃对应MzPushReceiver回调方法
register(Context context)
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-107173-1.html
试探他们的底线