日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

【Flutter】Flutter 混合开发 ( Flutter 与 Native 通信 | 通信场景 | Channel 通信机制 | Channel 支持的通信数据类型 | Channel 类型 )

發布時間:2025/6/17 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Flutter】Flutter 混合开发 ( Flutter 与 Native 通信 | 通信场景 | Channel 通信机制 | Channel 支持的通信数据类型 | Channel 类型 ) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 一、Flutter 和 Native 應用之間的通信場景
  • 二、Flutter 和 Native 的 Channel 通信機制
  • 三、Channel 通信機制支持的數據類型
  • 四、Channel 類型
  • 五、相關資源





一、Flutter 和 Native 應用之間的通信場景



Flutter 和 Native 應用 之間的通信場景 :

① Native →\rightarrow Flutter ( 初始化 ) : Native 模塊中向 Flutter 模塊傳遞 初始化數據 initParams ; 如 : 在 Activity 中遷入 FlutterFragment , 可以傳 initParams 初始化數據 ;

② Native →\rightarrow Flutter ( 運行中 ) : Native 模塊在運行中 , 主動向 Flutter 模塊傳遞數據 ; 如 : 收集了一些傳感器數據 , 實時傳遞給 Flutter 模塊 ;

③ Flutter →\rightarrow Native : Flutter 模塊 向 Native 模塊傳遞數據 ;

④ Flutter ?\leftrightarrow? Native : Flutter 模塊 與 Native 模塊 雙向傳遞數據 ;

這里的 Native 應用指的是 Android 或 iOS 的原生應用 ;





二、Flutter 和 Native 的 Channel 通信機制



Flutter 和 Native 之間的通信 , 需要通過 Channel 完成 ;

如下圖所示 , Flutter 中的消息 , 通過 平臺通道 Channel 發送給 Android 中的 Activity , 然后在 Native 模塊中再進行具體的分發 ;





三、Channel 通信機制支持的數據類型



Flutter 和 Native 的 Channel 通信所支持的數據類型 :





四、Channel 類型



Flutter 中有 333 種不同類型的 Channel 平臺通道 :

① BasicMessageChannel : 傳遞 字符串 / 半結構化 信息 ; 該類型 Channel 可進行持續通信 ;

② MethodChannel : 跨 Native / Flutter 平臺調用對方的方法 ; 該類型 Channel 只能進行一次通信 ;

③ EventChannel : 數據流通信 ; 數據流是 EventStreams ; 該類型 Channel 可進行持續通信 ;

BasicMessageChannel 和 EventChannel 都可以持續通信 , 但是 BasicMessageChannel 發送消息后 , 還可以接受對方回復的消息 , EventChannel 只能向對方發送消息 , 不能接受對方反饋消息 ;





五、相關資源



參考資料 :

  • Flutter 官網 : https://flutter.dev/
  • Flutter 插件下載地址 : https://pub.dev/packages
  • Flutter 開發文檔 : https://flutter.cn/docs ( 強烈推薦 )
  • 官方 GitHub 地址 : https://github.com/flutter
  • Flutter 中文社區 : https://flutter.cn/
  • Flutter 實用教程 : https://flutter.cn/docs/cookbook
  • Flutter CodeLab : https://codelabs.flutter-io.cn/
  • Dart 中文文檔 : https://dart.cn/
  • Dart 開發者官網 : https://api.dart.dev/
  • Flutter 中文網 : https://flutterchina.club/ , http://flutter.axuer.com/docs/
  • Flutter 相關問題 : https://flutterchina.club/faq/ ( 入門階段推薦看一遍 )
  • GitHub 上的 Flutter 開源示例 : https://download.csdn.net/download/han1202012/15989510
  • Flutter 實戰電子書 : https://book.flutterchina.club/chapter1/
  • Dart 語言練習網站 : https://dartpad.dartlang.org/

重要的專題 :

  • Flutter 動畫參考文檔 : https://flutterchina.club/animations/

博客源碼下載 :

  • GitHub 地址 : ( 隨博客進度一直更新 , 有可能沒有本博客的源碼 )

    • Flutter Module 工程 : https://github.com/han1202012/flutter_module
    • Android 應用 : https://github.com/han1202012/flutter_native
    • 注意 : 上面兩個工程要放在同一個目錄中 , 否則編譯不通過 ;
  • 博客源碼快照 : https://download.csdn.net/download/han1202012/21670919 ( 本篇博客的源碼快照 , 可以找到本博客的源碼 )

總結

以上是生活随笔為你收集整理的【Flutter】Flutter 混合开发 ( Flutter 与 Native 通信 | 通信场景 | Channel 通信机制 | Channel 支持的通信数据类型 | Channel 类型 )的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。