此文档主要是用于在游戏开发商需要接入BaseSDK后使用推送功能时的补充文档。
接入BaseSDK的游戏及应用的android客户端开发者。
implementation 'com.wpmid.midbase:MIDSDKPushFireBase:1.0.3.1'
implementation 'com.wpmid.midbase:MIDSDKPushBase:1.0.1'
用于本地推送,不需要服务端配合。
id 需要是纯数字,在int 范围内
/**
* 本地推送接口
*/
MIDBaseSDK.getInstance(mMainActivity)
.MIDPushAddLocalNotification(mPushLocalData);
MIDPushAddLocalNotification 参数介绍
参数 | 参数类型 | 参数说明 |
---|---|---|
| pushId | String | 推送消息ID ,可以根据此ID移除推送|
| NotificationId | long | 通知栏ID |
| Title | String | 推送信息标题 |
| Content | String | 推送信息内容 |
| subtext | String | 推送信息内容,通知栏第三行展示 |
| autocancel | boolean | 设置点击后,是否会关闭推送信息,建议设置为true|
| pushChannelID | String | 推送渠道id |
| pushChannelName | String | 推送渠道名称,用于高版本系统,在设备内展示 |
|broadcastTime |long| 推送展示时间,毫秒数|
// 设置当前时间,延迟5秒后展示。
MIDPushLocalData mPushLocalData = new MIDPushLocalData();
mPushLocalData.setPushId("1000");
mPushLocalData.setNotificationId(1000);
mPushLocalData.setTitle("推送消息Title");
mPushLocalData.setContent("推送消息内容");
mPushLocalData.setSubtext("推送消息第三行展示内容");
mPushLocalData.setAutocancel(true);
mPushLocalData.setPushChannelID("ltbase_push_google");
mPushLocalData.setPushChannelName("pushChannelName");
mPushLocalData.setBroadcastTime(System.currentTimeMillis() + 5000);
MIDBaseSDK.getInstance(mMainActivity)
.MIDPushAddLocalNotification(mPushLocalData);
此接口用于设置用户服务端推送标签,需要登录以后调用。
允许设置多个标签,标签设置为增加标签, 相同标签code 多次设置为修改。
比如有一个标签code: userlv name: 用户等级 value:1 首次设置代表为用户等级1级
再次设置 code: userlv name: 用户等级 value:2 为修改用户等级为2级
/**
* 推送标签设置, 举例设置3个标签
*/
ArrayList arrayList = new ArrayList();
for (int i = 0; i < 3; i++) {
MIDPushUserLabel label = new MIDPushUserLabel();
label.labelCode = "labelCode" + i;
label.labelName = "labelName" + i;
label.labelValue = "labelValue" + i;
arrayList.add(label);
}
MIDBaseSDK.getInstance(mMainActivity)
.MIDBasePushReportLabel(arrayList);
MIDPushUserLabel 参数说明,
参数 | 参数类型 | 参数说明 |
---|---|---|
labelCode | String | 标签标识 |
labelName | String | 标签名称 |
labelValue | String | 标签内容 |
此事件通过广播监听.
游戏需要自己新建一个广播接收类,实现事件监听。
<!-- android:name 需要换成游戏自己的实现类。 -->
<receiver android:name="com.wpmid.midpushsdk.SampleWakedResultReceiver">
<intent-filter>
<action android:name="com.midpush.android.intent.WakedReceiver" />
<category android:name="midbase_package_name" />
</intent-filter>
</receiver>
package com.wpmid.midpushsdk;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import com.wpmid.sdk.utils.Log.Logs;
public class SampleWakedResultReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Logs.fi("MIDPush", " SampleWakedResultReceiver onReceive, 接收到应用被拉起事件 ");
}
}
游戏可以通过此接口,移除指定的消息。
通过设置的本地推送的 pushId 进行取消。
此接口取消的已经展示出来的推送。
/**
* 推送 pushId
*/
MIDBaseSDK.getInstance(mMainActivity)
.MIDPushRemoveLocalNotification(String pushId);
游戏可以通过此接口,移除全部的消息。
通过设置的本地推送的 pushId 进行全部取消,
此接口取消的已经展示出来的推送。
/**
*/
MIDBaseSDK.getInstance(mMainActivity)
.MIDPushClearAllNotification();
游戏可以通过此接口,删除指定的消息。
通过设置的本地推送的 pushId 进行删除。
删除的是还没有展示的的消息。
/**
* 推送 pushId
*/
MIDBaseSDK.getInstance(mMainActivity)
.MIDPushRemoveLocalPush(String pushId);
游戏可以通过此接口,删除全部的消息。
通过设置的本地推送的 pushId 进行全部删除,
删除的是还没有展示的的消息。
/**
*/
MIDBaseSDK.getInstance(mMainActivity)
.MIDPushRemoveAllLocalPush();