信鸽推送集成实例

前言:

推送是App开发中必不可少的功能,之前接入过个推、友盟、极光等,效果只能说一般,由于Android系统的碎片化和国内各家手机厂商定制系统不一样,导致推送有时候不是很及时,有时候第三方的sdk说要我们接入付费版的,说是可以达到多少送达率和存活率,但是他们也不能给出一个准确数字,回答得很模糊,小公司在初期不会太多钱在推送开发上面,这时候就需要我们自己去想办法了,最近也尝试了各大平台的第三方sdk,接入了腾讯信鸽、融云、网易云信等等.

1.平台分析:

融云集成比较麻烦,但是支持华为、小米、魅族、vivo、oppo和google等各大手机平台,算是目前最全面的了.

2.融云开放平台地址:

融云-为用户提供IM即时通讯和实时音视频通信云服务

3.信鸽支持华为、小米、魅族、google的FCM,

开放平台地址:https://xg.qq.com/,支持的手机平台截图如下:

img

4.网易云信开放平台地址:

网易云信 - IM即时通讯云 -音视频通话

5.支持的手机平台截图如下:

(新手接入指南 - IM 即时通讯)

img

6.今天是接入的腾讯信鸽的sdk,其他暂时不讲,后面会分别写接入说明文章,在腾讯信鸽平台注册开发者账号后,创建应用,然后下载sdk.

7.通过AndroidStudio自动集成,studio集成步骤如下:

7.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 {
        ......
​
    //信鸽3.2.5之前版本无需单独依赖'com.tencent.jg:jg:1.1',其它三个依赖必须有。
​
​
    //信鸽3.2.6以上的版本
    //完整的信鸽依赖四个都必须有,如果发生依赖冲突请根据对应的依赖版本号选择高版本的依赖。(使用jcenter自动接入请确认libs中没有信鸽的相关jar包) 
​
    //信鸽jar
    compile 'com.tencent.xinge:xinge:3.2.7-Release'
    //jg包
    compile'com.tencent.jg:jg:1.1'
    //wup包
    compile  'com.tencent.wup:wup:1.0.0.E-Release'
    //mid包
    compile 'com.tencent.mid:mid:4.0.6-release'
​
    }

7.2:以下是我项目集成的截图:

img

img

8.手动配置来进行集成

8.1:注册并下载SDK

  • 如需监听消息请参考XGBaseReceiver接口或者是 demo 的 MessageReceiver 类。自行继承XGBaseReceiver并且在配置文件中配置如下内容:

  • img

前往信鸽管理台 xg.qq.com,使用QQ号码登陆,进入应用注册页,填写“应用名称”和“应用包名”(必须要跟APP一致),选择“操作系统”和“分类”,最后点击“创建应用”。

应用创建成功后,点击“应用配置”即可看到 APP 专属的 AccessId 和 AccessKey 等信息。

注册完成后,请下载最新版本的 Android SDK 到本地,并解压。

8.2:过程配置可以参考信鸽推送平台说明,截图如下:

img

9.注册以及部分日志输出。

9.1 根据手动接入或者自动接入,配置好信鸽过后,获取信鸽注册日志

AndroidStudio 建议采用jcenter自动接入,无需在配置文件中配置信鸽各个节点,全部由依赖导入)。

开启debug日志数据的方法如下:

 XGPushConfig.enableDebug(this,true);

9.2 token注册

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);
}
})

10.我的项目Manifest配置如下:

img

11.Application代码:

img

12.输出日志如下:

imgimg

img![点击并拖拽以移动](data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==

13.通过日志可以看到注册成功,token也获取到了,推送信息成功到达显示在手机上,后面会接入其他手机平台方法实例.

至此一个简单的信鸽推送集成demo和流程已经完成,小伙伴们如有更好地的方法和推送平台欢迎留言和给出解决方案,虽然说已经成立了统一推送联盟,但是到成熟还要一个阶段,后面会给出demo的下载地址.谢谢大家~~

​​​​​​​

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
包含客户端和服务端 代码 亿级并发,秒级触达 稳定的大规模接入集群,同时与数亿移动智能终端保持稳定的长连接,支持十亿级并发 秒级触达用户,每天可发百亿级的通知/消息 最省电省流量方案 智能识别网络环境,根据不同环境定制通讯协议,以最低消耗维护长连接,做到极致省电省流量 通知及消息高度压缩,节省流量的同时加密保证安全性 丰富标签,精准定向 特定标签人群,团队测试用户,全量用户,单个用户等多种范围选择 及时稳定地将信息达到最相关的用户,形成用户粘性,避免骚扰 开放API接口,灵活自定义 开放能力,提供多种语言API ,包括Java/PHP/Python/Node.js,业务自由集成 可视效果,实时监控 实时监控通知/消息的抵达用户量,点击转化量,点击转化率,效果一目了然 使用方法 登录后,创建应用,获取应用的唯一识别码AccessKey和密钥SecretKey; 下载对应平台的SDK,并参考开发文档完成SDK集成; 通过API调用或Web业务端方便快速地完成测试和实际发,并实时查看效果。 使用场景 通知,定义为Android和iOS开发者指南中的Notifidoveion。服务器定向将信息实时达手机,通过建立一条手机与服务器的连接链路,当有消息需要发到手机时,通过此链路发即可。通过一条用户可见的信息,引导用户进行有目的性的操作。通常用于产品信息知会、新闻和个性化消息等场景。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值