Skip to content

famik/pushkit

Repository files navigation

Android PushKit

目前仅集成了华为推送小米推送
Just support huawei and xiaomi

使用

  • 添加JitPack仓库到你项目的根build.gradle
    Add JitPack repository in your root build.gradle:
    allprojects {
        repositories {
            ...
            maven { url 'https://jitpack.io' }
        }
    }
  • 添加依赖到你的app的build.gradle
    Add the dependency:
    dependencies {
        implementation 'com.github.famik:pushkit:1.0.6'
    }
  • 配置AppId / AppKey
    在你的app的build.gradle里添加 manifestPlaceholders:
    defaultConfig {
        // ...此处省略其它已有代码

        manifestPlaceholders = [
            // 华为推送的AppId
            "huaweiPushAppId": "101195551",

            // 小米推送的AppId
            "xiaomiPushAppId": "2882303761518198184",
            "xiaomiPushAppKey": "5841819888184"
        ]
    }

  • 初始化
    在Application的onCreate里面调用 PushKit 的 init 方法
    PushKit.init(context)

初始化时会根据手机厂商选择推送平台,如果不是华为手机则使用小米推送

  • 设置委托
    PushKit.setDelegate(delegate)

PushKit.Delegate 接口如下:

    public interface Delegate {
        // token获取成功后回调
        void onPushTokenUpdated(Context context, String token);

        // 收到透传消息后回调
        void onPushMessageReceived(Context context, String msg);
    }

  • 获取Token
    PushKit.updateToken()

Token 获取成功后会通过 PushKit.Delegate 接口回调
由于华为推送平台的Token会过期,建议定时调用一下 updateToken