Flutter项目中Braze与华为push_kit集成的最佳实践及步骤咨询
Flutter项目集成Braze SDK + 华为Push Kit落地步骤与最佳实践
前置校验
- 确认你的Flutter版本在2.5.0及以上,Android项目的
compileSdkVersion不低于33 - 提前在华为开发者后台申请好应用的Push服务权限,拿到
app_id、api_key等核心配置参数 - 确认你使用的Braze Flutter SDK版本适配对应版本的华为Push Kit,推荐匹配Braze Android SDK 23.0.0+ 搭配华为Push Kit 6.5.0.300及以上版本
具体集成操作步骤
1. 依赖引入
- 在项目根目录的
pubspec.yaml中添加Braze Flutter SDK依赖:
dependencies: flutter: sdk: flutter braze_plugin: ^6.0.0 # 建议使用官方最新稳定版
- 在Android模块的
build.gradle中添加华为仓库和Push Kit依赖:
repositories { maven { url 'https://developer.huawei.com/repo/' } } dependencies { implementation 'com.huawei.hms:push:6.9.0.300' implementation 'com.braze:braze-hms-push:23.3.0' // Braze官方提供的HMS桥接依赖 }
2. 基础配置
- 把从华为后台下载的
agconnect-services.json文件放到Android模块的app/目录下 - 在Android模块的
AndroidManifest.xml中添加Braze和华为Push的必要配置,填写你自己的Braze实例API密钥、集群域名 - 在Flutter层的
main.dart初始化Braze SDK:
import 'package:braze_plugin/braze_plugin.dart'; void main() { WidgetsFlutterBinding.ensureInitialized(); BrazePlugin().setApiKey("你的Braze API密钥"); BrazePlugin().setCustomEndpoint("你的Braze集群域名"); BrazePlugin().startSDK(); runApp(const MyApp()); }
3. 华为Push令牌同步配置
- 原生Android层添加令牌监听,将华为返回的Push令牌主动上报给Braze:
// 放在MainActivity的onCreate方法中或者自定义的Application类中 BrazeHmsPushProvider.registerPushTokenIfNeeded(getApplicationContext()); // 如果需要自定义令牌获取逻辑,获取到令牌后调用以下方法上报 Braze.getInstance(getApplicationContext()).registerAppboyPushMessages(hmsPushToken);
注意不要重复上报令牌,Braze的桥接库已经默认实现了自动上报逻辑,除非你有自定义令牌获取的需求再手动调用上报方法
- 配置透传消息、通知点击的回调处理,按照你的业务需求在Braze后台配置通知跳转逻辑,原生层实现对应的路由跳转即可。
官方推荐最佳实践
- 令牌上报失败自动重试:给令牌上报逻辑添加3次指数退避重试机制,避免网络波动导致上报失败、用户收不到推送
- 混淆规则配置:在Android的
proguard-rules.pro中添加Braze和华为Push Kit的专属混淆规则,避免Release打包后功能异常 - 多渠道推送优先级配置:如果同时集成了FCM和HMS推送,Braze会自动根据设备类型选择推送渠道,不需要额外做冲突处理
- 数据校验:集成完成后先在Braze后台的测试推送功能里,输入测试设备的华为Push令牌单独发推送,验证链路连通性后再全量上线
内容的提问来源于stack exchange,提问作者jjsebastianfuertes
相关产品推荐
相关产品推荐

