当前位置: 首页 > news >正文

Flutter与原生代码通信

文章目录

  • 1. 知识回顾
  • 2. 示例代码
  • 3. 经验总结

我们在上一章回中介绍了通道相关的内容,本章回中将介绍其中的一种通道:MethodChannnel.闲话休提,让我们一起Talk Flutter吧。

在这里插入图片描述

1. 知识回顾

我们在上一章回中介绍了通道的概念和作用,并且提到了通道有不同的类型,本章回将其中一种通道:MethodChannel.该通道主要通过方法实现通信功能,我们可以通
过方法的参数在通道上传递数据,该通道支持双向通信,就是说Flutte既可以使用通道给原生平台发送数据,也可以使用通道接收原生平台发来的数据。

2. 示例代码

通道的使用方法在前面章节已经介绍过,不过比较抽象,我们在这里通过具体的示例代码来演示:

  1. 在Flutter中创建通道,使用构造方法就可以创建通道,方法的参数最好使用域名/功能名这样的形式,因为在原生代码中会通过该名称获取该通道;
  flutterMethodChannel = MethodChannel("www.acf.com/battery");
  1. 监听通道中的方法或者事件.这里使用通道的invokeMethod()方法监听通道中名叫getBattery的方法,它可以获取到方法的的返回值。此外,我们还通过方法的
    参数给原生平台发送数据,名叫data的参数表示具体的数据。
    result = await flutterMethodChannel.invokeMethod("getBattery",data);
  1. 在原生平台的代码中获取通道;这里继承了FlutterActivity类并且重写类中的configureFlutterEngine()方法,在该方法中获取通道;
class MainActivity: FlutterActivity
http://www.lryc.cn/news/452608.html

相关文章:

  • 每日读则推(三)
  • Android Studio | 无法识别Icons.Default.Spa中的Spa
  • SKD4(note上)
  • rabbitmq----数据管理模块
  • 【人工智能深度学习应用】妙笔API最佳实践
  • SOMEIP_ETS_150: SD_Send_triggerEventUINT8Multicast_Eventgroup_6
  • 【EXCEL数据处理】000009 案列 EXCEL单元格数字格式。文本型数字格式和常规型数字格式的区别
  • Vxe UI vue vxe-table vxe-text-ellipsis 如何实现单元格多行文本超出、多行文本溢出省略
  • FFmpeg源码:avio_feof函数分析
  • 各省-城镇化率(2001-2022年)
  • 飞创龙门双驱XYZ直线模组高精度应用实例
  • Prompt 初级版:构建高效对话的基础指南
  • 餐饮重点企业在AI领域的布局,看方大的AI实践
  • Axure PR 9 开关切换 设计交互
  • ruoyi-python 若依python版本部署及新增模块
  • 【理论】负载均衡
  • 流行前端框架Vue.js详细学习要点
  • Java.数据结构.TreeMap
  • 什么是托管安全信息和事件管理 SIEM?
  • vscode安装及c++配置编译
  • JavaScript使用渐变来美化对象!
  • Linux之实战命令24:od应用实例(五十八)
  • 【CKA】一、基于角色的访问控制-RBAC
  • 【华为HCIP实战课程三】动态路由OSPF的NBMA环境建立邻居及排错,网络工程师
  • 初始Kafka
  • 学会使用maven工具看这一篇文章就够了
  • 如何创建虚拟环境并实现目标检测及验证能否GPU加速
  • <STC32G12K128入门第十三步>驱动W5500进行TCP_Client通信
  • 【Go语言】Ergo:构建分布式系统的现代化 Erlang 框架
  • 教资备考--高中数学(仅为高中数学梳理)