[那些年接过的第三方sdk]信鸽 cocos Android

2019-11-05  本文已影响0人  递归循环迭代

官网写的其实蛮详细了,对比demo更是简单;前提条件去信鸽注册账号 4.x官方文档: https://xg.qq.com/docs/android_access/upgrade_guide.html

1.在app build.gradle文件下配置 以下内容

android {
    ......
    defaultConfig {

        //信鸽官网上注册的包名.注意application ID 和当前的应用包名以及 信鸽官网上注册应用的包名必须一致。
        applicationId "你的包名" 
        ......

        ndk {
            //根据需要 自行选择添加的对应cpu类型的.so库。 
            abiFilters 'armeabi', 'armeabi-v7a', 'arm64-v8a' 
            // 还可以添加 'x86', 'x86_64', 'mips', 'mips64'
        }

        manifestPlaceholders = [

            XG_ACCESS_ID:"注册应用的accessid",
            XG_ACCESS_KEY : "注册应用的accesskey",

        ]
        ......
    }
    ......
}

dependencies {
    ......   

//信鸽jar,不包含厂商通道
implementation  'com.tencent.xinge:xinge:4.3.5-release'
//jg包
implementation'com.tencent.jg:jg:1.1'
//wup包
implementation 'com.tencent.wup:wup:1.0.0.E-Release'
//mid包,minSdkVersion 14
implementation 'com.tencent.mid:mid:4.0.7-Release'

}

2.androidmanifest.xml里配置监听

<receiver android:name="完整的类名如:com.qq.xgdemo.receiver.MessageReceiver"
android:exported="true" >
<intent-filter>
<!-- 接收消息透传 -->
<action android:name="com.tencent.android.tpush.action.PUSH_MESSAGE" />
<!-- 监听注册、反注册、设置/删除标签、通知被点击等处理结果 -->
<action android:name="com.tencent.android.tpush.action.FEEDBACK" />
</intent-filter>
</receiver>

3.把demo的messagereceiver文件复制过来
4.appactivity里注册id和key

 XGPushConfig.enableOtherPush(getApplicationContext(), true);
 XGPushConfig.setHuaweiDebug(true);
 XGPushConfig.setMiPushAppId(getApplicationContext(), "APPID");
 XGPushConfig.setMiPushAppKey(getApplicationContext(), "APPKEY");
 XGPushConfig.setMzPushAppId(this, "APPID");
 XGPushConfig.setMzPushAppKey(this, "APPKEY");
XGPushManager.registerPush(this, new XGIOperateCallback() {
@Override
public void onSuccess(Object data, int flag) {
//token在设备卸载重装的时候有可能会变
Log.d("TPush", "注册成功,设备token为:" + data);
}
@Override
public void onFail(Object data, int errCode, String msg) {
Log.d("TPush", "注册失败,错误码:" + errCode + ",错误信息:" + msg);
}
})

5.proguard-rules.pro增加混淆代码过滤,不然可能会失效

-keep public class * extends android.app.Service
-keep public class * extends android.content.BroadcastReceiver
-keep class com.tencent.android.tpush.** {*;}
-keep class com.tencent.mid.** {*;}
-keep class com.qq.taf.jce.** {*;}
-keep class com.tencent.bigdata.** {*;}

完成这些就可以在控制台发送通知了,可能不会那么即时,注意一下Android studdio的log有没有注册成功.
需要修改的对比文件
https://forum.cocos.org/t/android/85586

上一篇 下一篇

猜你喜欢

热点阅读