Skip to content

3.消息推送(Android Lite)

jwfing edited this page May 16, 2019 · 1 revision

Android 消息推送开发指南(精简版 SDK)

LeanCloud Push SDK(Lite)是一个极度精简的推送 SDK,它主要依赖以下几个模块来实现所有推送相关功能:

  • okhttp(com.squareup.okhttp3:okhttp:3.12.1
  • retrofit(com.squareup.retrofit2:retrofit:2.5.0
  • fastjson(com.alibaba:fastjson:1.1.70.android
  • java websocket(org.java-websocket:Java-WebSocket:1.3.9
  • protobuf-java(com.google.protobuf:protobuf-java:3.4.0

除此之外,并不依赖 LeanCloud 的任何 library。完整代码可以参考:LeanCloud Push Lite SDK

为什么要发布一个精简版的推送 SDK

LeanCloud 已经发布了一个标准版本的推送 SDK:LeanCloud Push SDK,该 SDK 除了推送服务之外,还支持即时通讯服务(共享同一个 WebSocket 长链接),并且由于即时通讯中文件/图片/音视频消息等功能的支持,它还必须依赖于 LeanCloud 核心 SDK,因此整体上体积会稍大一些。

对于那些只使用我们推送服务的客户来讲,其实只需要提供设备注册(AVInstallation存储)和 PushService 相关操作即可,标准版 SDK 中有些功能可能反而显得冗余。现在,我们有一些 VIP 客户正在优化产品移动端体验,安装包大小和启动时间是评测中的重要指标,为了协助他们做好优化,我们专门推出了这一精简版 SDK。

与 LeanCloud 标准版推送 SDK 相比,精简版 SDK 在体积和启动时间上的优化效果如下:

SDK 对比版本 library 大小 启动时间
标准版 4.7.10 1,219KB (核心 SDK+推送 SDK) 59ms(由 LeanCloud 推送服务用户提供)
精简版 5.0.13(第一版) 180KB 5ms

与其他厂商的对比结果

与个推的推送 SDK 相比,精简版 SDK 在体积和启动时间上的优化效果如下:

SDK 对比版本 library 大小 启动时间
个推 2.13.2.0 397KB jar 文件+ 40KB so 文件 17ms(由 LeanCloud 推送服务用户提供)
LeanCloud 精简版 5.0.13(第一版) 180KB 5ms

与极光的推送 SDK 相比,精简版 SDK 在体积和启动时间上的优化效果如下:

SDK 对比版本 library 大小 启动时间
极光 3.3.0 598KB jar 文件 + 16KB so文件
LeanCloud 精简版 5.0.13(第一版) 180KB 5ms

如何接入精简版推送 SDK

接入精简版推送 SDK 的方式和接入标准版类似(目前我们只提供源码接入的方式),可以参考文档:Android 消息推送 SDK 接入指南

要注意的是,核心类的包名在精简版中发生了变化:

Class 标准版 package 精简版 package
AVOSCloud com.avos.avoscloud cn.leancloud.push.lite
AVInstallation com.avos.avoscloud cn.leancloud.push.lite
PushService com.avos.avoscloud cn.leancloud.push.lite
AVBroadcastReceiver com.avos.avoscloud cn.leancloud.push.lite

具体可以参考我们的 Demo: LeanCloud Push(Lite) Demo