[TypeScript] 使用 Ionic 2 和 Android 实现推送通知的示例

您好,
我是网站开发部的Goto。
上次,这次 Ionic2 中 使用推送通知的示例文章我想写一篇关于如何
GCM(Google Cloud Messaging) 我们将使用
这个。
import { Push, provideCloud, CloudSettings } from '@ionic/cloud-angular'; const SENDER_ID = "{GCM 项目编号}"; const cloudSettings: CloudSettings = { 'core': { 'app_id': '{应用 ID}' }, 'push': { 'sender_id': SENDER_ID } }; @Component({省略}) class MyApp { constructor(private platform: Platform, private push: Push) { this.platform.ready().then(() => { var myPush = new Push.init( android: { sender_id: SENDER_ID } ); push.on('registration', (id) => { console.log(id); // => 打印 {注册 ID} }); push.on('notification', (data) => { console.log(data.title); console.log(data.message); }); push.on('error', (e) => { console.log(e.message); }); }); } } ionicBootstrap(MyApp, [provideCloud(cloudSettings)]);
然而,单靠这一点是行不通的。
我们将为您介绍您需要的东西。
1. 安装插件
$ ionic plugin add phonegap-plugin-push --variable SENDER_ID="{项目编号}"
2. 安装模块
$ npm install --save @ionic/cloud-angular
操作检查
curl -X POST -H "Authorization: key={Authentication key}" -H "Content-Type: application/json" -d '{ "registration_ids": ["{Registration ID for push notification}"], "data": { "title" : "Bad", "message": "Specifically, my stomach feels bad" } }' "https://android.googleapis.com/gcm/send"
补充说明
对于以下源代码中令人困惑之处,我将
提供简要解释。
- 应用 ID
- GCM项目编号
- 注册 ID
- 身份验证密钥
那是什么?我会为那些好奇的人写一个简单的补充解释。
应用 ID
Ionic 项目根目录下的
定义在
它应该与您使用 `ionic` 命令创建项目时使用的名称相同。
如果不是,您需要自行设置。
GCM项目编号
此页面,请创建一个项目。
创建项目时,系统会生成一个“项目 ID”和一个“项目编号”。
项目编号将用于推送通知。
如果您已经创建了项目,“IAM 和管理 => 设置”下查看
注册 ID
此ID由智能手机端生成。
生成后,将其发送给服务器。
当服务器需要发送推送通知时,
它会请求GCM使用该ID向智能手机发送推送通知。
身份验证密钥
这是向 GCM 发送推送通知请求时使用的身份验证密钥。
在 Google API 的 “API 管理器 => 凭据”找到它
就这样。
如果您觉得这篇文章对您有帮助,请点个“赞”!
0
