theme: condensed-night-purple
highlight: a11y-dark

嗨!这里是甜瓜看代码,大家五一快乐呀,这篇文章跟大家聊聊怎么集成个推。

Flutter集成个推SDK

  个推是一款支持多平台的推送服务平台,Flutter提供了多个第三方库来支持个推SDK的集成,其中最为常用的是 flutter_getui 库。

安装

pubspec.yaml 文件中添加以下依赖:

dependencies:flutter_getui: ^4.1.0

然后执行以下命令:

$ flutter pub get

配置

安卓配置

  1. android/app/build.gradle 文件中添加以下代码:
android {defaultConfig {//...manifestPlaceholders = [GETUI_APP_ID: "<your_app_id>",GETUI_APP_KEY: "<your_app_key>",GETUI_APP_SECRET: "<your_app_secret>"]}
}

  将 <your_app_id>, <your_app_key>, <your_app_secret> 替换为个推官网申请的应用ID、应用Key和应用Secret。

  1. AndroidManifest.xml 文件中添加以下权限:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

iOS配置

Info.plist 文件中添加以下代码:

<key>com.getui.demo.appid</key>
<string><your_app_id></string>
<key>com.getui.demo.appkey</key>
<string><your_app_key></string>
<key>com.getui.demo.appsecret</key>
<string><your_app_secret></string>

  将 <your_app_id>, <your_app_key>, <your_app_secret> 替换为个推官网申请的应用ID、应用Key和应用Secret。

使用

  在Flutter应用中使用个推SDK需要在启动时初始化SDK,并在需要接收推送消息的页面注册推送消息回调函数。

以下是一个简单的示例代码,用于在Flutter应用中发送和接收推送消息:

import 'package:flutter/material.dart';
import 'package:flutter_getui/flutter_getui.dart';void main() async {WidgetsFlutterBinding.ensureInitialized();await FlutterGetui.startUp(); // 初始化SDKrunApp(MyApp());
}class MyApp extends StatelessWidget {@overrideWidget build(BuildContext context) {return MaterialApp(title: '个推示例',home: HomePage(),);}
}class HomePage extends StatefulWidget {@override_HomePageState createState() => _HomePageState();
}class _HomePageState extends State<HomePage> {String message = '';@overridevoid initState() {super.initState();FlutterGetui.addEventHandler(onReceiveMessage: (Map<String, dynamic> message) async {setState(() {this.message = message.toString();},//还有很多回调方法,自己可以看);}void sendPushMessage() {// 构造推送消息PushMessage message = PushMessage(title: '测试标题',content: '测试内容',payload: '测试负载',);// 发送推送消息FlutterGetui.sendPushMessage(message);}@overrideWidget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text('个推示例'),),body: Center(child: Column(mainAxisAlignment: MainAxisAlignment.center,children: [ElevatedButton(onPressed: sendPushMessage,child: Text('发送推送消息'),),SizedBox(height: 20),Text(message,style: TextStyle(fontSize: 16),),],),),);}
}

  在上述代码中,我们首先在 main() 函数中初始化个推SDK,然后在 HomePage 中注册推送消息回调函数,并在 sendPushMessage() 函数中构造并发送推送消息。

  当应用接收到推送消息时,onReceiveMessage() 回调函数会被调用,并将推送消息的内容传递给它。在上述代码中,我们将推送消息的内容显示在了应用界面上,以方便调试。

总结

  使用 flutter_getui 库集成个推SDK可以很方便地在Flutter应用中实现推送消息的发送和接收。在使用过程中,需要注意在安卓和iOS平台上分别配置相应的参数和权限。

  希望本文能对你理解如何集成个推SDK提供一些帮助。这里是甜瓜看代码,期待你的关注!

推送消息不打烊--Flutter集成个推SDK实现Android和IOS原生推送相关推荐

  1. 友盟小米收不到推送消息_一个轻量级、可插拔的Android消息推送框架。一键集成推送(极光推送、友盟推送、华为、小米推送等)...

    XPush 一个轻量级.可插拔的Android消息推送框架.一键集成推送(极光推送.友盟推送.华为.小米推送等),提供有效的保活机制,支持推送的拓展,充分解耦推送和业务逻辑,解放你的双手! 在提iss ...

  2. iOS原生推送(APNS)进阶iOS10推送图片、视频、音乐

    代码地址如下: http://www.demodashi.com/demo/13208.html 前言 我们首先要在AppDelegate里面进行iOS的适配,可以参考这篇文章 iOS原生推送(APN ...

  3. Flutter 120hz 高刷新率在 Android 和 iOS 上的调研总结

    Flutter 120hz 高刷新率在 Android 和 iOS 上的调研总结 一.无用的知识 首先科普无用的知识,说起高刷新率,就不得不提两个词汇 ProMotion 和 LTPO . ProMo ...

  4. 基于 Google Flutter 的 WanAndroid 客户端,支持 Android 和 iOS。包括 BLoC、RxDart 、国际化、主题色、启动页、引导页,拥有较好的项目结构比较规范的代

    flutter_wanandroid 项目地址:Sky24n/flutter_wanandroid  简介:??? 基于 Google Flutter 的 WanAndroid 客户端,支持 Andr ...

  5. iOS原生推送(APNS)的实现

    参考:http://www.jianshu.com/p/9eae61bcc42e 1.前期准备工作 (1)证书的创建 进入苹果Apple Developer -> Member Center - ...

  6. flutter 调用原生安卓插件_Flutter 如何调用Android和iOS原生代码

    分3个大步骤: 1.在flutter中调用原生方法 2.在Android中实现被调用的方法 3.在iOS中实现被调用的方法 在flutter中调用原生方法 场景,这里你希望调用原生方法告诉你一个boo ...

  7. flutter 调用原生安卓插件_Flutter 如何调用Android和iOS原生代码-阿里云开发者社区...

    分3个大步骤: 1.在flutter中调用原生方法 2.在Android中实现被调用的方法 3.在iOS中实现被调用的方法 在flutter中调用原生方法 场景,这里你希望调用原生方法告诉你一个boo ...

  8. 百度android 测试平台,集成百度活体检测(Android、iOS)

    更新记录 1.1.0(2020-06-18) 插件增加iOS版本 1.0.2(2020-06-08) 优化插件打包无法使用的问题 插件调用方法添加sound字段,表示是否开启声音,true为开启,默认 ...

  9. Android集成谷歌定位sdk,概述-Android 定位SDK | 高德地图API

    什么是定位SDK Android 定位 SDK 是一套简单的LBS服务定位接口,您可以使用这套定位API获取定位结果.逆地理编码(地址文字描述).以及地理围栏功能. 面向的读者 Android 定位 ...

最新文章

  1. 奖励名单表格模板_员工出勤工薪记算表(行政人事模板)
  2. Kubernetes-dashboard安装
  3. 数据结构与算法 总结
  4. 微软的SQLHelper类(含完整中文注释)
  5. IIS6.0应用程序池回收和工作进程【转:http://www.cnblogs.com/freshman0216/archive/2008/06/02/1212460.html】...
  6. statsmodels学习——使用多元回归拟合数据
  7. spring mysql中文乱码问题_解决Spring下MySQL出现乱码的问题
  8. 建站如此容易:WordPress3.9建站简明视频教程完成发布啦
  9. 阿里iconfont图库官网网址
  10. 电子商务师四级证书理论题库
  11. Python 层次分析法 AHP
  12. html5接金币游戏源码,利用HTML5实现Canvas聚宝盆接金币游戏
  13. 我的世界rpg服务器背包位置,我的世界查看玩家背包方法 如何查看玩家背包
  14. php html5 播放器,html5实现完美兼容各大浏览器的播放器_html5教程技巧
  15. Spring的DAO模块数据库操作实例
  16. 关于我对AI的认知和看法
  17. topCoder Stripepainter
  18. idea的英文是什么意思_英文idea的汉语是什么意思
  19. 四川大学计算机学院研究生调剂,四川大学计算机学院2019年考研调剂信息(第二批)...
  20. 虚拟魔方——使用python对普通三阶魔方进行建模

热门文章

  1. 如何从计算机截屏到U盘,如何在电脑中使用截图工具?
  2. C语言-二维数组的定义、引用
  3. 【Scheme】Scheme 编程学习 (二) —— 基础
  4. OkHttp3线程池相关之Dispatcher中的ExecutorService
  5. 中国IDC行业年度综合实力排名前十
  6. NLP(二)文本生成 --VAE与GAN模型和迁移学习
  7. 告诉你对应的幸运数字
  8. 八大排序算法总结+例题练习(正在不断补充...)
  9. 按月度统计表格中的数量
  10. 统计最近7天每天数据