此文档主要是用于在游戏开发商需要接入龙图BaseSDK后使用推送功能时的补充文档。
此文档内功能仅接入过程是不能够测试的,需要通过龙图自动打包工具,打包以后才可以调试。
接入龙图BaseSDK的游戏及应用的android客户端开发者。
在谷歌后台配置推送内容后在客户端进行展示。
注:SDK只是封装了客户端部分,获取到当前设备的推送token以后需要研发自己调用firebase服务端推送API进行推送,可参考:Firebase-构建应用服务器发送请求
使用此接口获取当前设备的推送token。服务端使用此token 向当前设备推送消息。
/**
* 获取推送token
*/
LTBaseSDK.getInstance(LTBase_Demo_MainActivity.mMainActivity)
.LTPushGetPushToken();
设备推送token接口回调,用于接收推送token
LTBaseSDKPushListener 参数介绍
参数 | 参数类型 | 描述 |
---|---|---|
code | int | 成功:LTBaseErrorCode.PUSH_Success, 失败:LTBaseErrorCode.PUSH_Success.PUSH_Error |
token | String | 此token 只有在成功时存在 |
/**
* 设置推送相关回调
*/
LTBaseSDK.getInstance(LTBase_Demo_MainActivity.mMainActivity)
.LTPushSetPushListener(mLTBaseSDKPushListener);
/**
* 推送相关回调
*/
private LTBaseSDKPushListener mLTBaseSDKPushListener = new LTBaseSDKPushListener() {
@Override
public void LTBaseSDKPushToken(int code, String token) {
String GooglePushToken = token;
Log.i("LTPush", " GooglePushToken = " + GooglePushToken);
}
};
用于本地推送,不需要服务端配合。
id 需要是纯数字,在int 范围内
/**
* 本地推送接口
*/
LTBaseSDK.getInstance(LTBase_Demo_MainActivity.mMainActivity)
.LTPushAddLocalNotification(mLTPushLocalData);
LTPushAddLocalNotification 参数介绍
参数 | 参数类型 | 参数说明 |
---|---|---|
NotificationId | String | 推送消息ID ,可以根据此ID移除推送,id 需要是纯数字,在int 范围内 |
Title | String | 推送信息标题 |
Content | String | 推送信息内容 |
subtext | String | 推送信息内容,通知栏第三行展示 |
autocancel | boolean | 设置点击后,是否会关闭推送信息,建议设置为true |
pushChannelID | String | 推送渠道id |
pushChannelName | String | 推送渠道名称,用于高版本系统,在设备内展示 |
broadcastTime | long | 推送展示时间,毫秒数 |
// 设置当前时间,延迟5秒后展示。
LTPushLocalData mLTPushLocalData = new LTPushLocalData();
mLTPushLocalData.setNotificationId("1000");
mLTPushLocalData.setTitle("推送消息Title");
mLTPushLocalData.setContent("推送消息内容");
mLTPushLocalData.setSubtext("推送消息第三行展示内容");
mLTPushLocalData.setAutocancel(true);
mLTPushLocalData.setPushChannelID("ltbase_push_google");
mLTPushLocalData.setPushChannelName("pushChannelName");
mLTPushLocalData.setBroadcastTime(System.currentTimeMillis() + 5000);
LTBaseSDK.getInstance(LTBase_Demo_MainActivity.mMainActivity)
.LTPushAddLocalNotification(mLTPushLocalData);
此事件通过广播监听.
游戏需要自己新建一个广播接收类,实现事件监听。
<!-- android:name 需要换成游戏自己的实现类。 -->
<receiver android:name="com.longtu.longtu_pushsdk.SampleWakedResultReceiver">
<intent-filter>
<action android:name="com.longtupush.android.intent.WakedReceiver" />
<category android:name="ltbase_package_name" />
</intent-filter>
</receiver>
package com.longtu.longtu_pushsdk;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import com.longtu.sdk.utils.Log.Logs;
public class SampleWakedResultReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Logs.fi("LTPush", " SampleWakedResultReceiver onReceive, 接收到应用被拉起事件 ");
}
}
游戏可以通过此接口,移除指定的消息。
通过设置的本地推送的 pushId 进行取消。
此接口取消的已经展示出来的推送。
/**
* 推送 pushId
*/
LTBaseSDK.getInstance(LTBase_Demo_MainActivity.mMainActivity)
.LTPushRemoveLocalNotification(String pushId);
游戏可以通过此接口,移除全部的消息。
通过设置的本地推送的 pushId 进行全部取消,
此接口取消的已经展示出来的推送。
/**
*/
LTBaseSDK.getInstance(LTBase_Demo_MainActivity.mMainActivity)
.LTPushClearAllNotification();
游戏可以通过此接口,删除指定的消息。
通过设置的本地推送的 pushId 进行删除。
删除的是还没有展示的的消息。
/**
* 推送 pushId
*/
LTBaseSDK.getInstance(LTBase_Demo_MainActivity.mMainActivity)
.LTPushRemoveLocalPush(String pushId);
游戏可以通过此接口,删除全部的消息。
通过设置的本地推送的 pushId 进行全部删除,
删除的是还没有展示的的消息。
/**
*/
LTBaseSDK.getInstance(LTBase_Demo_MainActivity.mMainActivity)
.LTPushRemoveAllLocalPush();
上海中清龙图软件有限公司