leancloud java 推送_Android: 通过LeanCloud推送消息

无意中发现“知乎”App使用了LeanCloud服务,之后就知道了LeanCoud服务可以推送消息。之前也一直好奇在Android系统中,如何进行消息的推送,今天正好可以看看这个功能是如何实现的。不知道推送消息的实时性怎么样,在Android系统进入睡眠状态的时候,能否接收到推送的消息?

准备工作

在LeanCloud官网上注册账号:

– https://leancloud.cn/

下载开发Android应用所需要的SDK(当前最新版本为v3.13.10):

– https://leancloud.cn/docs/sdk_down.html

– https://github.com/leancloud/leancloud-sdk/tree/master/android/release-v3.13.10

下载Demo App:

– https://github.com/leancloud/android-push-demo

相关的文档:

– https://leancloud.cn/docs/android_push_guide.html

实战

由于官网的Demo App使用gradle编译,而我这里直接在Android-5.1.1_r15项目中编译,需要做少量的修改。

我们创建一个名为LcPushDemo的应用:

- 在官网上先创建这个应用,以便得到我们开发Android应用时所需要的App ID与App Key。

- 创建Android应用,直接copy Demo App,可以看到Demo App已经有11个月没有更新,看起来官方所提供的API很稳定。

LcPushDemo应用的目录层次结构如下:

LcPushDemo

+-- Android.mk

+-- AndroidManifest.xml

+-- libs

| +-- Java-WebSocket-1.3.1-leancloud.jar

| +-- avoscloud-push-v3.13.10.jar

| +-- avoscloud-sdk-v3.13.10.jar

| +-- avoscloud-statistics-v3.13.10.jar

| +-- fastjson-1.1.39.jar

| +-- httpmime-4.2.4.jar

| +-- okhttp-2.6.0-leancloud.jar

| +-- okio-1.6.0-leancloud.jar

| `-- protobuf-java-2.6.1.jar

+-- res

| +-- drawable/*

| +-- layout/*

| `-- values/*

`-- src

`-- com

`-- brobwind

`-- lcpushdemo

+-- Callback1.java

+-- Callback2.java

+-- CustomReceiver.java

+-- PushDemo.java

`-- PushDemoApp.java

NOTE:

1. App中所需要的Java Library可以从这里下载:https://github.com/leancloud/leancloud-sdk/tree/master/android/release-v3.13.10

2. 不知道是不是SDK中大量使用Java反射机制的原因,有些Java library没有导入也能正常编译通过,但运行时会报各种类没找到的错误。在下载SDK的时候也没有提示需要使用到额外的Java library。官方为什么不将这些相关的Java library一块打包。

3. 修改src/com/brobwind/lcpushdemo/PushDemoApp.java,使用我们之前申请到的App ID与App Key。

相关的界面如下(Android 5.1.1_r15 @ Nexus 4):

0afed4d0989cb22668baedff658d8a32.png

从网页推送消息:

33f5156064b42b4be36fafcb0210575b.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值