安装与配置极光推送

flutter中安装极光官方插件:jpush_flutter
https://pub.dev/packages/jpush_flutter 按照官方提示在 /android/app/build.gradle 中配置下列代码:
android: {
....
defaultConfig {
applicationId "替换成自己应用 ID"
...
manifestPlaceholders = [
JPUSH_PKGNAME : applicationId,
JPUSH_APPKEY : "appkey", // NOTE: JPush 上注册的包名对应的 Appkey.
JPUSH_CHANNEL : "developer-default", //暂时填写默认值即可.
]
}在极光中创建应用

创建完成后补全第一步中的 manifestPlaceholders。

根据提示补全包名:即你项目中的applicationId
运行项目:报错

按照报错提示补全
manifestPlaceholders = [
applicationName: "android.app.Application",
JPUSH_PKGNAME : applicationId,
JPUSH_APPKEY : "590951ceb353e55c81f317f6", // NOTE: JPush 上注册的包名对应的 Appkey.
JPUSH_CHANNEL : "developer-default", //暂时填写默认值即可.
]拿到官方example代码
https://github.com/jpush/jpush-flutter-plugin/blob/dev-3.x/example/lib/main.dart 补全appKey并运行。
如果出现打印 flutter get registration id:你的软件注册id表示注册成功。

到官网进行推送测试



收到通知。:grinning:
但是这种通知当应用程序进行killed后就收不到了,所以我们还需要集成各大手机厂商通道。
集成huawei厂商通道
到华为开发者联盟中新建一个项目
https://developer.huawei.com/consumer/cn/console/service/AppService


开通推送服务

添加个应用


下载配置文件放到项目级目录下


按照其配置步骤来

添加极光华为sdk依赖

dependencies {
implementation "cn.jiguang.sdk:jpush:5.2.3"
implementation "com.huawei.agconnect:agconnect-core:1.8.1.300"
implementation "com.huawei.hms:push:6.12.0.300"
implementation "cn.jiguang.sdk.plugin:huawei:5.2.3"
}生成并配置证书指纹https://developer.huawei.com/consumer/cn/codelab/HMSPreparation/index.html#2


//指令 keytool -genkey -v -keystore lvmaoya.jks -keyalg RSA -keysize 2048 -validity 10000 -alias lvmaoya keytool -list -v -keystore lvmaoya.jks
报错:

解决:配置androidmanifest.xml
// maifest 标签新增属性 xmlns:tools="http://schemas.android.com/tools" // application标签新增属性 tools:replace="android:label"

配置完成之后到极光里配置厂商通道

配置完成之后到华为项目里配置推送服务和回执

代码实例
https://github.com/lvmaoya/lvmaoya-flutter