推送监听接口 (addPushReceiver)

形容:增加推送监听,可监听接管到的自定义音讯(透传音讯)、告诉音讯、告诉栏点击事件、别名和标签变更操作。

/** * com.mob.pushsdk.MobPush.class * MobPush推送监听接口 * @param receiver 监听 */public static void addPushReceiver(MobPushReceiver receiver)

示例代码

MobPushReceiver mobPushReceiver = new MobPushReceiver() {        @Override        public void onCustomMessageReceive(Context context, MobPushCustomMessage message) {            //接管到自定义音讯(透传音讯)            message.getMessageId();//获取工作ID            message.getContent();//获取推送内容        }        @Override        public void onNotifyMessageReceive(Context context, MobPushNotifyMessage message) {            //接管到告诉音讯            message.getMobNotifyId();//获取音讯ID            message.getMessageId();//获取工作ID            message.getTitle();//获取推送题目            message.getContent();//获取推送内容        }        @Override        public void onNotifyMessageOpenedReceive(Context context, MobPushNotifyMessage message) {            //告诉被点击事件            message.getMobNotifyId();//获取音讯ID            message.getMessageId();//获取工作ID            message.getTitle();//获取推送题目            message.getContent();//获取推送内容        }        @Override        public void onTagsCallback(Context context, String[] tags, int operation, int errorCode) {            //标签操作回调            //tags: RegistrationId已增加的标签            //operation: 0获取标签 1设置标签 2删除标签            //errorCode: 0操作胜利 非0操作失败        }        @Override        public void onAliasCallback(Context context, String alias, int operation, int errorCode) {            //别名操作回调            //alias: RegistrationId对应的别名            //operation: 0获取别名 1设置别名 2删除别名            //errorCode: 0操作胜利 非0操作失败        }    };

移除推送监听接口 (removePushReceiver)

形容:移除告诉监听,与addPushReceiver()对应,增加推送监听后,在敞开界面时调用进行移除,移除之前增加过的推送监听。

/** * com.mob.pushsdk.MobPush.class * 移除Push监听接口 * @param receiver 监听 */ public static void removePushReceiver(MobPushReceiver receiver)

示例代码

MobPush.removePushReceiver(receiver);

获取注册Id (getRegistrationId)

形容:获取注册id。RegistrationId是MobPush针对不同用户生成的惟一标识符,可通过RegistrationId向用户推送音讯。

/** * com.mob.pushsdk.MobPush.class * 获取注册id  * @param callback 回调 */ public static void getRegistrationId(MobPushCallback<String>  callback)

示例代码

MobPush.getRegistrationId(new MobPushCallback<String>() {            @Override            public void onCallback(String s) {                Log.i(TAG, "RegistrationId: "+s);            } });

设置别名 (setAlias)

形容:设置别名。别名是惟一的,与RegistrationId为一对一关系。如屡次调用,会以最初一次设置为准,进行笼罩;

是否设置胜利,会在addPushReceiver()->MobPushReceiver-> onAliasCallback(Context context, String alias, int operation, int errorCode)中进行回调返回。当operation为0时,示意获取别名操作;当operation为1时,示意设置别名操作;当operation为2时,示意删除别名操作。当errorCode为0时,示意操作胜利;当errorCode非0时,示意操作失败。别名反对:字母(辨别大小写)、数字、下划线、汉字、特殊字符@!#$&*+=.|。

/** * com.mob.pushsdk.MobPush.class * 设置别名 * @param alias 想要设置的别名 */ public static void setAlias(String alias)

示例代码

MobPush.setAlias("想要设置的别名");

删除别名 (deleteAlias)

形容:删除别名。是否删除胜利,会在addPushReceiver()->MobPushReceiver-> onAliasCallback(Context context, String alias, int operation, int errorCode)中进行回调返回。当operation为0时,示意获取别名操作;当operation为1时,示意设置别名操作;当operation为2时,示意删除别名操作。当errorCode为0时,示意操作胜利;当errorCode非0时,示意操作失败。

/** * com.mob.pushsdk.MobPush.class * 删除别名 */ public static void deleteAlias()

示例代码

MobPush.deleteAlias();

获取别名 (getAlias)

形容:获取别名。是否获取胜利,会在addPushReceiver()->MobPushReceiver-> onAliasCallback(Context context, String alias, int operation, int errorCode)中进行回调返回。当operation为0时,示意获取别名操作;当operation为1时,示意设置别名操作;当operation为2时,示意删除别名操作。当errorCode为0时,示意操作胜利;当errorCode非0时,示意操作失败。

/** * com.mob.pushsdk.MobPush.class * 获取别名 */ public static void getAlias()

示例代码

MobPush.getAlias();

增加标签 (addTags)

形容:增加标签。标签能够增加多个,每次调用都会在原来的根底上进行追加。是否获取胜利,会在addPushReceiver()->MobPushReceiver-> onTagsCallback(Context context, String[] tags, int operation, int errorCode)中进行回调返回。当operation为0时,示意获取标签操作;当operation为1时,示意设置标签操作;当operation为2时,示意删除标签操作。当errorCode为0时,示意操作胜利;当errorCode非0时,示意操作失败。标签反对:字母(辨别大小写)、数字、下划线、汉字、特殊字符@!#$&*+=.|。

/** * com.mob.pushsdk.MobPush.class * 增加标签 * @param tags  想要增加的标签 */ public static void addTags(String[] tags)

示例代码

MobPush.addTags(new String[]{"想要增加的标签1", "想要增加的标签2"});

删除标签 (deleteTags)

形容:删除标签。是否获取胜利,会在addPushReceiver()->MobPushReceiver-> onTagsCallback(Context context, String[] tags, int operation, int errorCode)中进行回调返回。当operation为0时,示意获取标签操作;当operation为1时,示意设置标签操作;当operation为2时,示意删除标签操作。当errorCode为0时,示意操作胜利;当errorCode非0时,示意操作失败。

/** * com.mob.pushsdk.MobPush.class * 增加标签 * @param tags  想要删除的标签 */ public static void deleteTags(String[] tags)

示例代码

MobPush.deleteTags(new String[]{"想要删除的标签1", "想要删除的标签2"});

获取标签 (getTags)

形容:获取标签。是否获取胜利,会在addPushReceiver()->MobPushReceiver-> onTagsCallback(Context context, String[] tags, int operation, int errorCode)中进行回调返回。当operation为0时,示意获取标签操作;当operation为1时,示意设置标签操作;当operation为2时,示意删除标签操作。当errorCode为0时,示意操作胜利;当errorCode非0时,示意操作失败。

/** * com.mob.pushsdk.MobPush.class * 获取标签 */ public static void getTags()

示例代码

MobPush.getTags();

清空标签 (cleanTags)

形容:清空标签。是否清空胜利,会在addPushReceiver()->MobPushReceiver-> onTagsCallback(Context context, String[] tags, int operation, int errorCode)中进行回调返回。当operation为0时,示意获取标签操作;当operation为1时,示意设置标签操作;当operation为2时,示意删除标签操作。当errorCode为0时,示意操作胜利;当errorCode非0时,示意操作失败。

/** * com.mob.pushsdk.MobPush.class * 清空标签 */ public static void cleanTags()

示例代码

MobPush.cleanTags();

设置静音时段 (setSilenceTime)

形容:设置静音时段。几点几分开始到几点几分完结,这段时间属于静音时间段,接管到推送时,揭示类型属于静音状态。

/** * com.mob.pushsdk.MobPush.class * 设置静音时段 * @param startHour     开始静音工夫(时) * @param startMinute  开始静音工夫(分) * @param endHour      完结静音工夫(时) * @param endMinute   完结静音工夫(分) */ public static void setSilenceTime(int startHour, int startMinute, int endHour, int  endMinute)

示例代码

MobPush.setSilenceTime(20, 0, 0, 0);//设置静音时间段早晨20:00到00:00

增加本地告诉 (addLocalNotification)

形容:增加本地告诉。不通过服务器推送,客户端被动发送告诉。

/** * com.mob.pushsdk.MobPush.class * 增加本地告诉 * @param localNotification 本地告诉 * @return  true 增加胜利 false增加失败 */ public static boolean addLocalNotification(MobPushLocalNotification localNotification)

示例代码

MobPushLocalNotification localNotification = new MobPushLocalNotification(); localNotification.setTitle("本地告诉题目"); localNotification.setContent("本地告诉内容");        ... MobPush.addLocalNotification(localNotification);

移除本地告诉 (removeLocalNotification)

形容:移除本地告诉。

/** * com.mob.pushsdk.MobPush.class * 移除本地告诉 * @param lnotificationId 本地告诉ID * @return  true 移除胜利 false移除失败 */ public static boolean removeLocalNotification(int lnotificationId)

示例代码

MobPush.removeLocalNotification(想要移除的本地告诉ID);

清空本地告诉 (clearLocalNotifications)

形容:清空本地告诉。

/*** com.mob.pushsdk.MobPush.class * 清空本地告诉 * @return  true 清空胜利 false清空失败 */ public static boolean clearLocalNotifications()

示例代码

MobPush.clearLocalNotifications();

推送服务是否已进行 (isPushStopped)

形容:推送服务是已否进行。

/** * com.mob.pushsdk.MobPush.class * 推送服务是否已进行 * @return  true 已进行 false未进行 */ public static boolean isPushStopped()

示例代码

MobPush.isPushStopped();

进行推送服务 (stopPush)

形容:进行推送服务,不持续接管推送。

/** * com.mob.pushsdk.MobPush.class * 进行推送服务 */ public static void stopPush()

示例代码

MobPush.stopPush();

重启推送服务 (restartPush)

形容:推送服务进行后,重新启动推送服务。

/** * com.mob.pushsdk.MobPush.class * 重启推送服务 */ public static void restartPush()

示例代码

MobPush.restartPush();

点击告诉是否启动主页 (setClickNotificationToLaunchMainActivity)

形容:设置点击告诉是否启动默认页。默认为启动。

/** * com.mob.pushsdk.MobPush.class * 设置点击告诉是否启动主页 * @param isLaunch 是否启动默认页 true关上 false不关上 */ public static void setClickNotificationToLaunchMainActivity(boolean isLaunch)

示例代码

MobPush.setClickNotificationToLaunchMainActivity(true);

设置告诉图标 (setNotifyIcon)

形容:设置告诉图标。告诉默认应用利用图标,调用此办法来批改告诉图标。

/** * com.mob.pushsdk.MobPush.class * 设置告诉图标 * @param icon 告诉图标 */ public static void setNotifyIcon(int icon)

示例代码

MobPush.setNotifyIcon(R.mipmap.ic_launcher);

设置是否显示角标 (setShowBadge)

形容:设置是否显示角标,用于接管告诉时显示角标数量。

/** * com.mob.pushsdk.MobPush.class * 设置是否显示角标 * @param isShowBadge 是否显示角标 true显示 false不显示 */ public static void setShowBadge(boolean isShowBadge)

示例代码

MobPush.setShowBadge(true);

设置显示角标数 (setBadgeCounts)

形容:设置显示的角标数,须要用户依据本人的逻辑设置。

/** * com.mob.pushsdk.MobPush.class *设置显示的角标数 *@param counts 角标数 */ public static void setBadgeCounts(int counts)

示例代码

MobPush.setBadgeCounts(0);

统计厂商点击数 (重要notificationClickAck)

形容:统计厂商通道下发告诉的点击数,如不设置,无奈精确统计到厂商通道下发告诉的点击数,倡议加上。不设置仅影响厂商通道的点击数,不影响MobPush通道点击数统计。

/** * com.mob.pushsdk.MobPush.class *统计厂商点击数 *@param intent 上下文 */public static void notificationClickAck(Intent intent)

示例代码

MobPush.notificationClickAck(getIntent());

设置告诉栏显示的最大告诉条数 (setNotificationMaxCount)

形容:告诉栏显示的最大告诉条数, 需大于0。

/** * com.mob.pushsdk.MobPush.class *设置告诉栏显示的最大告诉条数 *@param count 最大告诉条数 */ public static void setNotificationMaxCount(int count)

示例代码

MobPush.setNotificationMaxCount(5)

获取设置的告诉栏显示告诉的最大条数 (getNotificationMaxCount)

形容:告诉栏显示的最大告诉条数

/** * com.mob.pushsdk.MobPush.class * 获取设置的告诉栏显示告诉的最大条数 *@return  设置的具体条数 */ public static int getNotificationMaxCount()

示例代码

MobPush.getNotificationMaxCount()

获取TCP状态 (checkTcpStatus)

形容:获取TCP状态 判断TCP状态是否失常

/** * com.mob.pushsdk.MobPush.class * 获取TCP状态 * @param callback 回调 */ public static void checkTcpStatus(MobPushCallback callback)

示例代码

MobPush.checkTcpStatus(new MobPushCallback<Boolean>() {      @Override      public void onCallback(Boolean o) {          Log.i(TAG, "checkTcpStatus:"+o);      } });

关上轮询开关 (startNotificationMonitor)

形容:MobPush只会在初始化的时候更新记录的告诉权限状态。如须要实时更新,可调用该办法:

/** * com.mob.pushsdk.MobPush.class * 关上轮询开关 */ public static void startNotificationMonitor()

示例代码

MobPush.startNotificationMonitor();

敞开轮询开关 (stopNotificationMonitor)

形容:敞开权限轮询开关

/** * com.mob.pushsdk.MobPush.class * 敞开轮询开关 */public static void stopNotificationMonitor()

示例代码

MobPush.stopNotificationMonitor();

性能自定义和扩大

scheme跳转

前言:此性能仅仅是针对push的一些应用场景而进行自定义设定。比方,告诉被点击的时候:

通过scheme设置配置跳转

首先当初Manifest文件中进行指标Activity的uri设置,如下:

<activity    android:name=".LinkActivity">    <intent-filter>        <action android:name="android.intent.action.VIEW" />        <category android:name="android.intent.category.DEFAULT" />        <data            android:host="com.mob.mobpush.link"            android:scheme="mlink" />    </intent-filter></activity>

在Mob后盾进行推送时,通过scheme://host的格局,例如mlink://com.mob.mobpush.link,如下地位填入:

配置好之后,推送就App就能够接管到推送间接关上指定的Activity界面了,倡议对立设置一个直达页,依据传递参数后再进行跳转。

获取回调的参数详情

1、当app显示在前台的时候,会触发MobPushReceiver的onNotifyMessageOpenedReceive办法,MobPushNotifyMessage参数则是回调的告诉详情,能够依据回调参数进行解决;

2、当app过程杀掉的时候,点击告诉后拉起利用的启动页面,会触发启动Activity的OnCreate或OnNewIntent办法,通过getIntent办法拿到回传的Intent,能够拿到告诉详情;

此形式能够配合形式一跳转具体页面做为直达页面应用,MobPush提供了对立的办法来获取

//通过scheme跳转详情页面可抉择此形式JSONArray var = new JSONArray();var =  MobPushUtils.parseSchemePluginPushIntent(getIntent());//跳转首页可抉择此形式JSONArray var2 = new JSONArray();var2 = MobPushUtils.parseMainPluginPushIntent(getIntent());

可参考官网demo