如何在 Flutter 中集成极光推送

本文章将讲述:
01 简述

如何在 Flutter 中集成极光推送

文章插图
极光推送,英文简称 JPush,免费的第三方消息推送服务,官方也推出众多平台的 SDK 以及插件 。
如下图:
如何在 Flutter 中集成极光推送

文章插图
我们本文章讲述的是在应用程序开发中集成极光推送,参考官方极光推送文档中-客户端集成插件中有提供极光推送的插件 , 所以首先我们可以在项目中直接使用这个插件 。
如何在 Flutter 中集成极光推送

文章插图
02 项目中集成官方提供的极光推送插件
如何在 Flutter 中集成极光推送

文章插图
2.1项目中添加 极光推送依赖
2.1.1 通过
git 的方式来添加依赖(方式一)
极光推送插件
在项目中的 .yaml 配制文件中添加 git 依赖
# 极光推送插件jpush_flutter:# git 依赖方式git:# git 依赖的地址url: git://github.com/jpush/jpush-flutter-plugin.git# git 仓库中的分支ref: master
如下图示:
如何在 Flutter 中集成极光推送

文章插图
点击get 下载依赖
如何在 Flutter 中集成极光推送

文章插图
或者直接在 命令行中 使用get 来加载依赖
如何在 Flutter 中集成极光推送

文章插图
直接通过 git 的方式从 上加载 , 与你的网速有很大关系,也很有可能加载不成功,需要耐心等待,小编通过此方式加载时就花了比较长的时间 。
2.1.2 通过本地添加极光推送插件依赖(方式二)
【如何在 Flutter 中集成极光推送】在极光推送插件官方 中 , 我们点击下载依赖库
如何在 Flutter 中集成极光推送

文章插图
然后把下载下来的 zip 文件解压 , 放到一个目录中,小编这里是放在了与项目同一级的目录空间中了,如下图
如何在 Flutter 中集成极光推送

文章插图
然后在项目中的 .yaml 配制极光推送的本地依赖如下
# 极光推送插件jpush_flutter:path: ../jpush-flutter-plugin
如图所示:
如何在 Flutter 中集成极光推送

文章插图
2.1.3 通过 pub.dev 添加极光推送插件依赖(方式三)
pub 是官方的 Dart仓库,类似于 node 中的 npm 仓库,中的 ,我们可以在上面查找我们需要的包和插件 。
我们可以访问国内的 pub 仓库来更快的搜索我们需要的插件
如何在 Flutter 中集成极光推送

文章插图
然后在项目中的 .yaml 配制极光推送的 pub 依赖如下
jpush_flutter: 0.1.0
或者写成
jpush_flutter: ^0.1.0
或者写成
jpush_flutter: any
配制好依赖后,我们点击get 来加载依赖:
如何在 Flutter 中集成极光推送

文章插图
2.1.4 极光推送 插件依赖成功
在项目中有多种方式方法来依赖 极光推送的插件,那么依赖成功的标识如下图所示:
如何在 Flutter 中集成极光推送

文章插图
03 在项目中初始化极光推送
如何在 Flutter 中集成极光推送

文章插图
我们可以考虑在项目启动的时候配置初始化极光推送
3.1 第一步 导包
import 'package:jpush_flutter/jpush_flutter.dart';
3.2 第二步 初始化
import 'package:flutter/material.dart';import 'package:jpush_flutter/jpush_flutter.dart';import 'index_page.dart';///程序入口void main() => runApp(RootApp());class RootApp extends StatefulWidget{@overrideState createState() {return RottAppState();}}class RottAppState extends State{///根布局的初始化@overridevoid initState() {super.initState();///创建 JPushJPush jpush = new JPush();///配置应用 Keyjpush.setup(appKey: "替换成你自己的 appKey",channel: "theChannel",production: false,/// 设置是否打印 debug 日志debug: true, );}@overrideWidget build(BuildContext context) {///来构建return MaterialApp(///应用程序默认显示的页面home: IndexPage(),);}}
这里使用到了
3.3 配置 项目中平台的相关信息
然后在目录下配置 build.
如何在 Flutter 中集成极光推送

文章插图
在极光开发者平台中创建你的应用程序
如何在 Flutter 中集成极光推送

文章插图
然后配置推送设置
如何在 Flutter 中集成极光推送

文章插图
这里的应用包名对应上述目录下的 build. 中的
配置好后运行项目
如何在 Flutter 中集成极光推送

文章插图
运行手机上 会有task ... 的提示,去 maven下载平台使用到的依赖库以及 os 库等 。
如何在 Flutter 中集成极光推送

文章插图
走到这里,项目中,极光推送在方面便配制好了 。
日志信息如下
如何在 Flutter 中集成极光推送

文章插图
然后在极光开发者平台发送测试消息
如何在 Flutter 中集成极光推送

文章插图
然后在运行的手机上我们可以看到:
如何在 Flutter 中集成极光推送

文章插图
3.4 配置项目中 ios 平台的极光推送相关信息
在 xcode 中打开项目
如何在 Flutter 中集成极光推送

文章插图
然后在 xcode 目录中
如何在 Flutter 中集成极光推送

文章插图
然后在极光开发者平台中配制 ios 的相关推送认证
如何在 Flutter 中集成极光推送

文章插图
然后在这里配置 ios 的推送证书推送证书生成可参考 官方文档 证书设置指南
如何在 Flutter 中集成极光推送

文章插图
配制好证书后 运行项目于手机上
如何在 Flutter 中集成极光推送

文章插图
也可以在 xcode 中进行运行查看日志
如何在 Flutter 中集成极光推送

文章插图
04 错误处理
如何在 Flutter 中集成极光推送

文章插图
4.1 错误一
如何在 Flutter 中集成极光推送

文章插图
需要在目录下配置
如何在 Flutter 中集成极光推送

文章插图
4.2ios 平台无法接收到推送消息
在注册 推送的时候,可以先添加上接收通知消息的权限申请,申请成功权限后再进行注册 。
●关于极光●
极光( ,纳斯达克股票代码:JG)成立于2011年,是中国领先的开发者服务提供商 。极光专注于为移动应用开发者提供稳定高效的消息推送、即时通讯、统计分析、极光分享、短信、一键认证、深度链接等开发者服务 。截止到2019年9月份 , 极光已经为超过50万移动开发者和138.6万款移动应用提供服务,其开发工具包(SDK)安装量累计308亿,月度独立活跃设备13.4亿部 。同时,极光持续赋能开发者和传统行业客户,推出精准营销、金融风控、市场洞察、商业地理服务产品,致力于为社会和各行各业提高运营效率 , 优化决策制定 。