推送功能接入文档

文档说明

此文档主要是用于在游戏开发商需要接入龙图BaseSDK后使用推送功能时的补充文档。
此文档内功能仅接入过程是不能够测试的,需要通过龙图自动打包工具,打包以后才可以调试。

阅读对象

接入龙图BaseSDK的游戏及应用的android客户端开发者。

firebase推送

在谷歌后台配置推送内容后在客户端进行展示。
注:SDK只是封装了客户端部分,获取到当前设备的推送token以后需要研发自己调用firebase服务端推送API进行推送,可参考:Firebase-构建应用服务器发送请求

获取推送Token

使用此接口获取当前设备的推送token。服务端使用此token 向当前设备推送消息。

接口使用说明

  1. /**
  2. * 获取推送token
  3. */
  4. LTBaseSDK.getInstance(LTBase_Demo_MainActivity.mMainActivity)
  5. .LTPushGetPushToken();

推送token接收回调

设备推送token接口回调,用于接收推送token

回调参数说明

LTBaseSDKPushListener 参数介绍

参数 参数类型 描述
code int 成功:LTBaseErrorCode.PUSH_Success, 失败:LTBaseErrorCode.PUSH_Success.PUSH_Error
token String 此token 只有在成功时存在

接口使用说明

  1. /**
  2. * 设置推送相关回调
  3. */
  4. LTBaseSDK.getInstance(LTBase_Demo_MainActivity.mMainActivity)
  5. .LTPushSetPushListener(mLTBaseSDKPushListener);
  6. /**
  7. * 推送相关回调
  8. */
  9. private LTBaseSDKPushListener mLTBaseSDKPushListener = new LTBaseSDKPushListener() {
  10. @Override
  11. public void LTBaseSDKPushToken(int code, String token) {
  12. String GooglePushToken = token;
  13. Log.i("LTPush", " GooglePushToken = " + GooglePushToken);
  14. }
  15. };

本地推送功能

用于本地推送,不需要服务端配合。
id 需要是纯数字,在int 范围内

接口使用说明

  1. /**
  2. * 本地推送接口
  3. */
  4. LTBaseSDK.getInstance(LTBase_Demo_MainActivity.mMainActivity)
  5. .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 推送展示时间,毫秒数

接口实列

  1. // 设置当前时间,延迟5秒后展示。
  2. LTPushLocalData mLTPushLocalData = new LTPushLocalData();
  3. mLTPushLocalData.setNotificationId("1000");
  4. mLTPushLocalData.setTitle("推送消息Title");
  5. mLTPushLocalData.setContent("推送消息内容");
  6. mLTPushLocalData.setSubtext("推送消息第三行展示内容");
  7. mLTPushLocalData.setAutocancel(true);
  8. mLTPushLocalData.setPushChannelID("ltbase_push_google");
  9. mLTPushLocalData.setPushChannelName("pushChannelName");
  10. mLTPushLocalData.setBroadcastTime(System.currentTimeMillis() + 5000);
  11. LTBaseSDK.getInstance(LTBase_Demo_MainActivity.mMainActivity)
  12. .LTPushAddLocalNotification(mLTPushLocalData);

监听点击推送打开游戏事件。

此事件通过广播监听.
游戏需要自己新建一个广播接收类,实现事件监听。

配置说明

  1. <!-- android:name 需要换成游戏自己的实现类。 -->
  2. <receiver android:name="com.longtu.longtu_pushsdk.SampleWakedResultReceiver">
  3. <intent-filter>
  4. <action android:name="com.longtupush.android.intent.WakedReceiver" />
  5. <category android:name="ltbase_package_name" />
  6. </intent-filter>
  7. </receiver>

广播接收说明

  1. package com.longtu.longtu_pushsdk;
  2. import android.content.BroadcastReceiver;
  3. import android.content.Context;
  4. import android.content.Intent;
  5. import com.longtu.sdk.utils.Log.Logs;
  6. public class SampleWakedResultReceiver extends BroadcastReceiver {
  7. @Override
  8. public void onReceive(Context context, Intent intent) {
  9. Logs.fi("LTPush", " SampleWakedResultReceiver onReceive, 接收到应用被拉起事件 ");
  10. }
  11. }

移除指定消息接口 (移除已经展示出来的)

游戏可以通过此接口,移除指定的消息。
通过设置的本地推送的 pushId 进行取消。
此接口取消的已经展示出来的推送。

接口使用说明

  1. /**
  2. * 推送 pushId
  3. */
  4. LTBaseSDK.getInstance(LTBase_Demo_MainActivity.mMainActivity)
  5. .LTPushRemoveLocalNotification(String pushId);

移除全部消息接口 (移除已经展示出来的)

游戏可以通过此接口,移除全部的消息。
通过设置的本地推送的 pushId 进行全部取消,
此接口取消的已经展示出来的推送。

接口使用说明

  1. /**
  2. */
  3. LTBaseSDK.getInstance(LTBase_Demo_MainActivity.mMainActivity)
  4. .LTPushClearAllNotification();

删除指定消息接口

游戏可以通过此接口,删除指定的消息。
通过设置的本地推送的 pushId 进行删除。
删除的是还没有展示的的消息。

接口使用说明

  1. /**
  2. * 推送 pushId
  3. */
  4. LTBaseSDK.getInstance(LTBase_Demo_MainActivity.mMainActivity)
  5. .LTPushRemoveLocalPush(String pushId);

删除全部消息接口

游戏可以通过此接口,删除全部的消息。
通过设置的本地推送的 pushId 进行全部删除,
删除的是还没有展示的的消息。

接口使用说明

  1. /**
  2. */
  3. LTBaseSDK.getInstance(LTBase_Demo_MainActivity.mMainActivity)
  4. .LTPushRemoveAllLocalPush();