Android 推送通知 是一种用于将消息直接发送到 Android 智能手机的服务。使用此服务,开发人员可以在数据可用时立即将数据发送到 Android 应用程序 ,这样 Android 应用程序就不必向服务器发出请求以了解是否有新信息可用。
使用 Android 推送 服务,应用程序可以节省智能手机电池并减少网络流量:用户体验也得到改善。
有几种不同的方法可用于实现 Android 推送通知 ,标准方法是使用 GCM(Google Cloud Messaging) ,但也有一些非常有趣的替代方法,如 Parse.com ,更易于使用。
Parse.Com 设置项目
第一件事是创建一个
Parse 帐户
并配置一个新应用程序。这很容易。完成所有事情后,就可以在 Android Studio 中创建一个新项目并修改
build.grade
以包含解析库:
dependencies {
...
compile 'com.parse.bolts:bolts-android:1.2.1'
compile 'com.parse:parse-android:1.10.1'
}
现在您可以按照
Parse.com 提供的教程
进行操作。在我们的例子中,我们创建了一个扩展
Application
的
ParseTutorialApplication
,它用于配置 Parse 连接:
dependencies {
...
compile 'com.parse.bolts:bolts-android:1.2.1'
compile 'com.parse:parse-android:1.10.1'
}
现在您使用库提供的默认接收器,在下一段中您将看到如何自定义它。
如果项目配置正确,您可以尝试使用 Web 界面发送推送通知:
在您的 Android 模拟器中,您应该会收到通知:
请确保模拟器包含 Google API。
Parse.Com 自定义接收器
现在是自定义接收器的时候了,这样我们就可以支持自定义消息,而不仅仅是文本消息。自定义接收器,可以实现应用程序逻辑,如解析传入消息和显示自定义消息等。回顾 Manifest.xml,作为 广播接收器 ,它使用标准接收器 com.parse.ParsePushBroadcastReceiver,现在要自定义其行为,我们可以将其子类化:
dependencies {
...
compile 'com.parse.bolts:bolts-android:1.2.1'
compile 'com.parse:parse-android:1.10.1'
}
并覆盖 onPushReceiver 以便在消息可用时可以实现应用程序逻辑。让我们假设消息是这样的 JSON 格式:
dependencies {
...
compile 'com.parse.bolts:bolts-android:1.2.1'
compile 'com.parse:parse-android:1.10.1'
}
在
onPushReceiver
中,应用程序解析消息:
dependencies {
...
compile 'com.parse.bolts:bolts-android:1.2.1'
compile 'com.parse:parse-android:1.10.1'
}
一旦消息内容可用并从 JSON 消息中提取出来,应用程序就会使用
NotificationCompat
和
NotificationManager
将其通知给用户。
dependencies {
...
compile 'com.parse.bolts:bolts-android:1.2.1'
compile 'com.parse:parse-android:1.10.1'
}
其中
pendingIntent
是在用户触摸推送通知时启动 Activity 的 Intent 实例:
dependencies {
...
compile 'com.parse.bolts:bolts-android:1.2.1'
compile 'com.parse:parse-android:1.10.1'
}
最后应用程序通知消息:
dependencies {
...
compile 'com.parse.bolts:bolts-android:1.2.1'
compile 'com.parse:parse-android:1.10.1'
}
最终结果如下图所示:
请注意,我们也自定义了通知图标。
在这篇文章的最后,您将了解如何使用 Parse.com 发送 android 推送消息,在接下来的文章中,您将学习如何使用推送通知发送由 Arduino 等智能控制器生成的消息,敬请期待!