?TencentCloud-TIMPush 是腾讯云即时通信 IM Push 插件。目前推送支持小米、华为、荣耀、OPPO、vivo、魅族、APNs、一加、realme、iQOO 和 苹果等厂商通道。
注册应用到厂商推送平台
离线推送需要将您自己的应用注册到各个厂商的推送平台,得到 AppID 和 AppKey 等参数,来实现离线推送功能。目前国内支持的手机厂商有:小米、华为、荣耀、OPPO、vivo、魅族,境外支持 Google FCM。
步骤1:注册小米开发者账号
步骤2:创建应用
1. 在管理控制台单击消息推送。
注意:
若使用个人账号登录,会显示“抱歉,您当前没有推送/审核权限”。
?
2. 创建应用,完善应用资料界面,单击保存。
?
?注意:
应用包名与插件应用包名保持一致。
???
步骤3:启用推送
进入推送运营平台的应用列表页面,在对应的应用名称单击启用推送,确定启用。
???
步骤4:查看获取应用信息
进入推送运营平台的应用信息页面,查看应用信息。
???
???
步骤5:配置推送证书
厂商推送平台 | IM 控制台配置 |
? | 注意: 应用内指定界面链接,不可以修改。 该配置用于派发单击后离线推送插件的事件监听,不可以直接配置应用内页面的跳转。 ? |
步骤1:注册华为开发者账号
步骤2:创建应用
1. 在管理中心单击我的项目,添加一个新的项目。
?
2. 在项目设置栏单击推送服务 > 立即开通。
?
3.单击项目设置 > API 管理,开启推送服务的权限。
?
步骤3. 添加应用
单击项目设置 > 常规,添加应用。
注意:
应用包名与插件应用包名保持一致。
?
?
?步骤4:获取应用信息
单击项目设置 > 常规,获取应用信息。
说明:
常规页面包含项目和应用的 Client ID 和 Client Secret,两者对应的参数不一致,请下拉至页面底部,获取应用的 Client ID 和 Client Secret。
必须添加打包的 SHA256证书指纹,SHA256 证书指纹需与自己的打包证书一致。
下载 agconnect-services.json 文件,放到项目中:nativeResources/android/assets/ 路径下。
修改了项目、应用信息、开发服务设置,都需要重新下载配置 agconnect-services.json 文件。
???
?
?步骤5:添加推送证书
厂商推送平台 | IM 控制台配置 |
? ? ? | 注意: Client ID 对应 AppID,Client Secret 对应 AppSecret。 应用内指定界面链接,不可以修改。 该配置用于派发单击后离线推送插件的事件监听,不可以直接配置应用内页面的跳转。 ? ? ? |
注意:
通知栏推送:应用需在 OPPO 软件商店上架;
通知栏推送测试权限:每天仅可推送1000条消息,限测试使用。应用上架后需重新申请“通知栏推送”权限,以获得正常消息推送数量;
平台将会在1个工作日内返回审核结果,开发者可以在申请页面查看审核结果,其他问题可咨询开放平台客服。
步骤1:注册 OPPO 开发者账号
步骤2:创建应用
进入 OPPO 开放平台,单击产品 > 应用分发> OPPO 软件商店 > 发布应用进入管理中心,创建应用。
?
?
?步骤3:开通 PUSH 服务
1. 进入 OPPO 开放平台,单击产品 > 移动服务 > 推送服务进入推送主页,单击申请接入开通推送服务。
?
2. 单击进入管理中心 > 应用列表 > 申请推送服务界面,为未开启服务的应用申请推送权限。
说明:
已开启服务:已申请 PUSH 权限并通过的应用。
未开启服务:可申请 PUSH 权限的应用。
?
?
3. 单击申请开通。在未开启服务中单击需要申请 PUSH 权限的应用,进入 PUSH 服务并点击申请开通。
?
步骤4:添加推送证书
厂商推送平台 | IM 控制台配置 |
? | 注意: 应用内指定界面链接,不可以修改。 该配置用于派发单击后离线推送插件的事件监听,不可以直接配置应用内页面的跳转。 ? |
注意:
若应用没有上架应用市场,推送权限受限,不可在 vivo 官网的 Web 界面和 API 后台发送正式消息,可在 API 后台向设置的测试设备发送测试消息进行测试。
步骤1:注册 vivo 开发者账号
步骤2:新建应用
进入vivo 开放平台,单击分发 > 应用分发 > 应用商店 > 上传应用来新建您的应用。
?
步骤3:开通推送
进入管理中心单击推送服务 > 推送申请为新建的应用申请开通推送。
?
?
步骤4:获取应用信息
进入推送运营平台,单击应用管理 > 应用信息,获取应用信息。
?
步骤5:添加推送证书
厂商推送平台 | IM 控制台配置 |
? | 注意: 应用内指定界面链接,不可以修改。 该配置用于派发单击后离线推送插件的事件监听,不可以直接配置应用内页面的跳转。 ? |
回执配置请参见:消息触达统计配置 > vivo?
步骤1:注册魅族开发者账号
步骤2:创建应用
1. 单击控制台 > Flyme 推送。
?
2. 填写应用信息后,创建应用。
注意:
应用包名与插件应用包名保持一致。
?
步骤3:获取应用信息
在应用列表中单击打开应用。进入配置管理页面,获取应用信息。
???
步骤4:添加推送证书
厂商推送平台 | IM 控制台配置 |
? | 注意: 应用内指定界面链接,不可以修改。 该配置用于派发单击后离线推送插件的事件监听,不可以直接配置应用内页面的跳转。 ? |
回执配置请参见:消息触达统计配置 > 魅族?
步骤1. 注册荣耀开发者账号
步骤2: 进入管理中心页面。
???
步骤3: 进入推送服务列表
单击推送服务进入推送服务列表页面。
???
步骤4: 创建应用
1. 单击申请推送服务进入应用申请页面。
?
2. 选择应用类型“移动应用”,填写应用包名和证书指纹、同意推送服务协议和数据处理附录,单击提交。
注意:
?
?
?步骤5: 获取应用信息
在推送服务列表中,单击查看,获取应用信息。
?
步骤6:添加推送证书
厂商推送平台 | IM 控制台配置 |
? ? ? | 注意: 应用内指定界面链接,不可以修改。 该配置用于派发单击后离线推送插件的事件监听,不可以直接配置应用内页面的跳转。 ? ? ? |
?
Google FCM 正在开发中,敬请期待~~
Apple 厂商配置目前有两种主流的证书,p12 证书和 p8 证书。两种证书各有优劣,您可按需要选择其中的一种。
? | 证书类型 | 有效期和管理 | 安全性 | 灵动岛 |
p12 证书 | p12 证书是一个包含公钥和私钥的二进制文件,用于基于证书的身份验证。它将公钥证书和私钥捆绑在一个文件中,扩展名为 .p12 或 .pfx。 | p12 证书通常有一年的有效期,过期后需要重新生成和部署。每个应用程序都需要单独的 P12 证书来处理推送通知。 | 证书:p12 证书使用基于证书的身份验证,需要在服务器上存储私钥。这可能会增加安全风险,因为私钥可能会被未经授权的用户访问。 | 不支持 |
p8 证书 | p8 证书是一个 Auth Key(授权密钥),用于基于令牌的身份验证。它是一个包含私钥的文本文件,扩展名为 .p8。 | p8 证书没有到期日期,因此您无需担心证书过期。此外,使用 P8 证书可以简化证书管理,因为您可以使用一个 p8 证书为多个应用程序提供推送通知服务。 | p8 证书使用基于令牌的身份验证,这意味着您的服务器会周期性地生成一个 JSON Web Token(JWT)来与 APNs 建立连接。这种方法更安全,因为它不需要在服务器上存储私钥。 | 支持灵动岛推送 |
一、使用 p12 证书 (传统推送证书)
步骤1:申请 APNs 证书
开启 App 远程推送
1. 登录 苹果开发者中心 网站,单击 Certificates,Identifiers & Profiles 或者侧栏的 Certificates,IDs & Profiles,进入 Certificates, IDS & Profiles 页面。
?
2. 单击 Identifiers 右侧的 +。
?
?
?3. 您可以参见如下步骤新建一个 AppID,或者在您原有的 AppID 上增加
Push Notification
的 Service
。说明:
您 App 的
Bundle ID
不能使用通配符 *
,否则将无法使用远程推送服务。4. 勾选 App IDs,单击 Continue 进行下一步。
?
?
?5. 选择 App,单击 Continue 进行下一步。
?
?
?6. 配置
Bundle ID
等其他信息,单击 Continue 进行下一步。?
?
?7. 勾选 Push Notifications,开启远程推送服务。
?
?
?生成证书
1. 选中您的 AppID,选择 Configure。
?
?
?2. 可以看到在 Apple Push Notification service SSL Certificates 窗口中有两个
SSL Certificate
,分别用于开发环境(Development)和生产环境(Production)的远程推送证书,如下图所示:?
?
?3. ?
我
们先选择开发环境(Development)的 Create Certificate,系统将提示我们需要一个 Certificate Signing Request(CSR)。?
?
?4. 在 Mac 上打开钥匙串访问工具(Keychain Access),在菜单中选择钥匙串访问 > 证书助理 > 从证书颁发机构请求证书(
Keychain Access - Certificate Assistant - Request a Certificate From a Certificate Authority
)。?
?
?5. 输入用户电子邮件地址(您的邮箱)、常用名称(您的名称或公司名),选择存储到磁盘,单击继续,系统将生成一个
*.certSigningRequest
文件。?
?
?6. 返回上述 步骤3 中 Apple Developer 网站刚才的页面,单击 Choose File 上传生成的
*.certSigningRequest
文件。?
?
?7. 单击 Continue,即可生成推送证书。
?
?
?8. 单击 Download 下载开发环境的
Development SSL Certificate
到本地。?
?
?9. 再次按照上述步骤1 - 8,将生产环境的
Production SSL Certificate
下载到本地。说明
生产环境的证书实际是开发(Sandbox)+生产(Production)的合并证书,可以同时作为开发环境和生产环境的证书使用。
?
?
??
?
?10. 双击打开下载的开发环境和生产环境的
SSL Certificate
,系统会将其导入钥匙串中。11. 打开钥匙串应用,在登录 > 我的证书,右键分别导出刚创建的开发环境(
Apple Development IOS Push Service
)和生产环境(Apple Push Services
)的 p12
文件。?
注意
保存
.p12
文件时,请务必为其设置密码。步骤2:上传证书到控制台
1. 登录 即时通信 IM 控制台。
2. 单击目标应用卡片,进入应用的基础配置页面。
?
?
?3. 单击 iOS 原生离线推送设置右侧的添加证书。
4. 选择证书类型,上传 iOS 证书(p.12),设置证书密码,单击确认。
?
注意:
上传证书名最好使用全英文(尤其不能使用括号等特殊字符)。
上传证书需要设置密码,无密码收不到推送。
发布 App Store 的证书需要设置为生产环境,否则无法收到推送。
上传的 p12 证书必须是自己申请的真实有效的证书。
5. 待推送证书信息生成后,记录证书的 ID。
?
二、使用 p8 证书 (支持灵动岛推送)
p8 证书:p8 证书没有到期日期,因此您无需担心证书过期。此外,使用 p8 证书可以简化证书管理,因为您可以使用一个p8 证书为多个应用程序提供推送通知服务。另外,p8 证书支持灵动岛推送。
步骤1:申请 APNs 证书
?
?
?1. 进入Certificates,Identifiers & Profiles:在页面右上角单击 Account,然后在下拉菜单中选择 Certificates, Identifiers & Profiles 。
2. 创建一个新的 App ID:在左侧菜单中单击 Identifiers ,然后单击右侧的 + 创建一个新的 App ID。填写相应的信息并单击 Continue 。
3. 创建一个新的密钥:在左侧菜单中单击 Keys,然后单击右侧的 + 创建一个新的密钥。输入密钥的名称,然后勾选 Apple Push Notifications service (APNs),单击 Continue 。
?
确认并生成密钥:在确认页面核对您的密钥信息,然后单击 Register 。接下来,您将看到一个页面提示您下载密钥。单击 Download,将生成的 .p8 文件保存到您的计算机上。
注意:
p8 证书只可以下载一次,请妥善保存。
请妥善保管下载的 p8 文件,因为您将无法再次下载该文件。您可以使用此P8证书配置您的iOS应用程序以接收推送通知。
步骤2:上传 p8 证书到IM控制台
1. 登录 即时通信 IM 控制台。
2. 单击目标应用卡片,进入应用的基础配置页面。
3. 单击 iOS 原生离线推送设置右侧的添加证书。
4. 选择 .p8 证书
?
?
?说明:
Key ID:这是您的 APNs Auth Key 的唯一标识符。当您在 Apple Developer Center 创建一个新的 APNs Auth Key 时,系统会为您生成一个 Key ID。您可以在 "Certificates, Identifiers & Profiles" 部分的 "Keys" 中找到它。
Team ID:这是您的开发者账户的唯一标识符。您可以在 Apple Developer Center 的账户详情页面找到它。点击右上角的 "Membership",在 "Membership Details" 部分可以找到您的 Team ID。
Bundle ID:这是您的应用程序的唯一标识符,也称为应用程序 ID。您可以在 Apple Developer Center 的 "Certificates, Identifiers & Profiles" 部分找到它。选择 "Identifiers",然后在您的应用程序列表中找到对应的 Bundle ID。
三. 生成 TIMPushAppGroupID
步骤1:登录苹果开发者中心网站,进入【identifiers】 ->【App Groups】创建 AppGroups。
???
?
?
??
?
?步骤2:绑定使用 TencentCloud-TIMPush 应用的 appID 到 AppGroups。
?
?
??
?
????
?
?步骤3. 获取您的 TIMPushAppGroupID。
?
?
??