Flutter 离线推送 厂商对接分享

本文分享了在Flutter项目中对接极光推送,并实现iOS和Android离线推送的过程。在Android端,重点讲述了配置厂商通道时遇到的问题,如华为厂商后台SHA256证书配置、agconnect-services.json的正确下载和放置、以及应用回执配置的疑惑。此外,还提及了小米厂商的简单对接步骤,强调了配置细节。后续将继续更新更多对接经验。
摘要由CSDN通过智能技术生成

最近项目在对接flutter的推送,选用的是三方极光推送作为方案。推送在ios端配置相对简单 按照极光文档配置ios的推送证书等就能很好实现在线和离线推送功能, 特殊的是android推送的配置,要实现离线推送就要配置厂商通道,在配置厂商通道的过程中,遇见许多坑点特此分享一下。
对接华为厂商通道过程中,按照极光文档 配置了plugin、manifest,华为市场后台创建应用开通服务后依旧收不到离线通知。
我遇到的坑点主要如下:
1.华为厂商后台SHA256证书配置没有成功
2.agconnect-services.json 最好等证书配置完成后再下载配置到项目的App目录下在这里插入图片描述
3.项目回执的配置问题(这个坑定目前不确定是否一定有影响,但我确实是配置了以后才开始收到离线推送的,后来关闭了应用回执也依然能收到离线推送,所以这个不能十分确实是否是必要影响)(PS:如果要测试配置这个应用回执 可以参考友盟推送文档,传送门其中有可以用来试用的回执配置信息
在这里插入图片描述
3.小米厂商对接想的太复杂导致对接失败 其实只需要根据JCenter 自动化集成步骤、小米官网下载推送jar包、 并且小米应用开启推送服务就可以了
值得注意的是 配置小米的APPKEY 和APPID时 和极光基础配置放在一个manifestPlaceholders里面就可以 别分开放 如下:
在这里插入图片描述

以上便是目前flutter 对接厂商 做离线推送遇到的一些坑定,随着其它的一些对接和后续使用,会继续更新。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
接收极光推送消息需要进行以下步骤: 1. 集成 Flutter 极光推送插件,可以使用官方提供的 `jpush_flutter` 插件。 2. 在 `main.dart` 文件中初始化极光推送,并设置监听回调函数。 ```dart import 'package:jpush_flutter/jpush_flutter.dart'; void main() async { WidgetsFlutterBinding.ensureInitialized(); JPush jpush = new JPush(); jpush.setup( appKey: "yourAppKey", channel: "developer-default", production: false, debug: true, ); // 设置推送监听回调函数 jpush.addEventHandler( onReceiveNotification: (Map<String, dynamic> message) async { print("Received notification: $message"); }, onOpenNotification: (Map<String, dynamic> message) async { print("Opened notification: $message"); }, onReceiveMessage: (Map<String, dynamic> message) async { print("Received message: $message"); }, ); runApp(MyApp()); } ``` 3. 在回调函数中处理推送消息。`onReceiveNotification` 回调函数处理通知栏消息,`onOpenNotification` 回调函数处理用户点击通知栏消息的操作,`onReceiveMessage` 回调函数处理自定义消息。 ```dart // 处理通知栏消息 onReceiveNotification: (Map<String, dynamic> message) async { print("Received notification: $message"); // 在这里处理消息内容,例如弹窗提示用户 }, // 处理用户点击通知栏消息 onOpenNotification: (Map<String, dynamic> message) async { print("Opened notification: $message"); // 在这里处理消息内容,例如打开指定页面 }, // 处理自定义消息 onReceiveMessage: (Map<String, dynamic> message) async { print("Received message: $message"); // 在这里处理消息内容,例如弹窗提示用户 }, ``` 注意:以上回调函数都是可选的,可以根据具体需求来决定是否需要实现。同时,如果你的应用程序在后台运行时收到推送消息,这些回调函数将不会被调用,而是会在用户点击通知栏消息时被调用。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值