日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【Flutter】开发 Flutter 包和插件 ( Flutter 包和插件简介 | 创建 Flutter 插件 | 创建 Dart 包 )

發布時間:2025/6/17 编程问答 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Flutter】开发 Flutter 包和插件 ( Flutter 包和插件简介 | 创建 Flutter 插件 | 创建 Dart 包 ) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 一、Flutter 包和插件簡介
  • 二、創建 Flutter 插件
    • 1、Android Studio 中可視化創建
    • 2、命令行創建
  • 三、創建 Dart 包
    • 1、Android Studio 中可視化創建
    • 2、命令行創建





一、Flutter 包和插件簡介



" Flutter 包 " 包含 pubspec.yamllib 代碼目錄 ;

  • pubspec.yaml 配置文件 : 配置各種依賴 , 資源等 ;
  • lib 目錄 : 是 Dart 代碼所在目錄 ;

Flutter 包的類型 :

  • Dart 包 : 僅涉及 Dart 代碼 , 將 Dart 代碼封裝一下 , 實現特定功能 , 如解析 JSON 字符串等 , 不涉及到與 Native 應用的交互 ;
  • 插件包 : 是專用的 Dart 包 , 包含 Dart API , 針對 Android 的 Java / Kotlin , 或 針對 iOS 的 Objective-C / Swift 的實現 , 如之前使用的拍照插件包 , 在 Android 平臺使用了 Android 相機的代碼 , 在 iOS 中調用了 iOS 相機相關功能 ;




二、創建 Flutter 插件




1、Android Studio 中可視化創建


可視化方式創建 " Flutter 包或插件 " :

前提 : Android Studio 中 安裝了 Flutter 和 Dart 插件 , 這也是開發 Flutter 的前提 ; 菜單欄選擇 " Flie / Settings … " 彈出的如下對話框中 , 選擇 " Plugin " 選項 , 如下就是安裝了 Flutter 和 Dart 插件 ;

在 菜單欄 選擇 " File / New / New Flutter Project… " 選項 ;

在彈出的如下對話框中 , 選擇 " Flutter Plugin " 就是創建 Flutter 插件 , 這里選擇創建 Flutter 插件 ;

( 如果選擇 " Flutter Package " , 就是創建 Flutter 包 )

輸入 Flutter 插件名稱 , 然后點擊 " Finish " 完成創建 ;

插件包創建完畢 :

插件包目錄結構介紹 :

  • lib : Dart 代碼目錄 , 在默認生成的 flutter_plugin.dart 代碼中 , 使用了 MethodChannel 與 Android / iOS 本地應用進行通信 ;
  • pubspec.yaml : 配置了依賴 , 以及相關說明 ;
  • android : 存放插件中 Android 部分代碼 ; android\src\main\kotlin\com\example\flutter_plugin 目錄中的 FlutterPlugin.kt 就是 Android 對應的插件 ; Android 開發者可以開發 android 目錄下的代碼 , 開發 Android 平臺的對應功能 ;
  • ios : 存放插件中 iOS 部分代碼 ; ios\Classes 目錄中的 FlutterPlugin.m 就是 iOS 中對應的插件 ; iOS 開發者可以開發 iOS 目錄下的代碼 , 開發 iOS 平臺的對應功能 ;

Flutter 與本地應用通信參考 【Flutter】Flutter 混合開發 ( Flutter 與 Native 通信 | 完整代碼示例 ) 代碼 ;


2、命令行創建


執行如下命令 , 創建 組織名為 com.example , 名稱是 flutter_plugin 的 Flutter 插件包 ;

flutter create --org com.example --template=plugin flutter_plugin

--org 設置組織名 , 即 Android 中的包名 ;
--template 設置當前創建的工程類型 , plugin 表示 Flutter 插件包 ;
flutter_plugin 表示插件包的名稱 ;

D:\flutter>flutter create --org com.example --template=plugin flutter_plugin Creating project flutter_plugin...flutter_plugin\.gitignore (created)flutter_plugin\.idea\libraries\Dart_SDK.xml (created)flutter_plugin\.idea\modules.xml (created)flutter_plugin\.idea\runConfigurations\example_lib_main_dart.xml (created)flutter_plugin\.idea\workspace.xml (created)flutter_plugin\.metadata (created)flutter_plugin\CHANGELOG.md (created)flutter_plugin\lib\flutter_plugin.dart (created)flutter_plugin\LICENSE (created)flutter_plugin\flutter_plugin.iml (created)flutter_plugin\pubspec.yaml (created)flutter_plugin\README.md (created)flutter_plugin\test\flutter_plugin_test.dart (created) Running "flutter pub get" in flutter_plugin... 721msflutter_plugin\example\.gitignore (created)flutter_plugin\example\.idea\libraries\Dart_SDK.xml (created)flutter_plugin\example\.idea\libraries\KotlinJavaRuntime.xml (created)flutter_plugin\example\.idea\modules.xml (created)flutter_plugin\example\.idea\runConfigurations\main_dart.xml (created)flutter_plugin\example\.idea\workspace.xml (created)flutter_plugin\example\.metadata (created)flutter_plugin\example\lib\main.dart (created)flutter_plugin\example\flutter_plugin_example.iml (created)flutter_plugin\example\pubspec.yaml (created)flutter_plugin\example\README.md (created)flutter_plugin\example\test\widget_test.dart (created) Running "flutter pub get" in example... 758ms Wrote 25 files.All done!Your plugin code is in flutter_plugin\lib\flutter_plugin.dart.You example app code is in flutter_plugin\example\lib\main.dart.You've created a plugin project that doesn't yet support any platforms.To add platforms, run `flutter create -t plugin --platforms <platforms> .` under flutter_plugin. For more information, see https://flutter.dev/go/plugin-platforms.D:\flutter>



三、創建 Dart 包




1、Android Studio 中可視化創建


在 菜單欄 選擇 " File / New / New Flutter Project… " 選項 ;

在彈出的如下對話框中 , 選擇 " Flutter Package" 就是創建 Flutter 包 ;

輸入 Flutter 包名稱 ;

點擊 " More Settings " 選項 , 可以設置更多選項 ;

創建的 Flutter 包如下 :

Dart 包目錄結構介紹 :

  • lib : Dart 代碼目錄 , 在默認生成的 flutter_package.dart 代碼中 , 封裝 Dart 功能 ;
  • pubspec.yaml : 配置了依賴 , 以及相關說明 ;

Dart 包是沒有 android 和 ios 原生代碼的 ;


2、命令行創建


執行如下命令 , 創建 名稱是 flutter_package 的 Dart 包 ;

flutter create --template=package flutter_package

--template 設置當前創建的工程類型 , package 表示 Dart 包 ;
flutter_package 表示插件包的名稱 ;

總結

以上是生活随笔為你收集整理的【Flutter】开发 Flutter 包和插件 ( Flutter 包和插件简介 | 创建 Flutter 插件 | 创建 Dart 包 )的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 玖玖色在线 | 亚洲福利视频一区二区 | 国产麻豆网 | 无码日韩人妻精品久久蜜桃 | 丝袜亚洲综合 | 怡春院在线视频 | 好吊视频一区二区三区四区 | 绿帽视频| 男女免费观看视频 | 欧美精品一区二区蜜桃 | 国产精品久久久一区 | 国产成人无码精品久久久久久 | 日本肉体xxxx裸体137大胆图 | 日本美女视频一区 | 亚洲性夜 | 亚洲巨乳在线 | 国产图片区 | 日韩欧美视频一区二区三区 | 久久精品一区二区三区四区 | 51av在线 | 91成人福利视频 | 久久综合国产 | 动漫精品一区 | 伊人青青草原 | 毛片麻豆 | 色www亚洲国产张柏芝 | 加勒比综合在线 | 亚洲天堂爱爱 | 午夜精品偷拍 | 婷婷午夜激情 | 欧美熟女一区二区 | 午夜天堂影院 | 激情视频在线免费观看 | 奇米777视频| 中国丰满熟妇xxxx性 | 欧美一区日韩一区 | 日韩精品一区二区三区国语自制 | 先锋资源一区二区 | 欧美精品色呦呦 | 西西4444www大胆无视频 | 久久五月网 | 久草手机在线观看 | 精彩视频一区二区三区 | 91国产在线播放 | 在线观看aaa | 中文字幕日韩欧美一区二区三区 | 亚洲色图另类 | 秋葵视频污 | 亚洲午夜免费 | 国产一区二区视频在线免费观看 | 精品久久久久久中文字幕 | 日韩黄色网 | 日韩中文字 | 毛片在线免费 | 91国内精品久久久 | 色爽 | 日日舔夜夜操 | 黄色大片av | 超碰精品在线 | 天天操天天操天天操天天 | 国产精品一区二区三区线羞羞网站 | 亚洲第一视频区 | 国产精品综合视频 | 一区国产在线 | 亚洲爆乳无码一区二区三区 | 中文字字幕在线中文乱码 | 欧美毛片基地 | 国产私拍视频 | 免费毛片基地 | 夜夜添无码一区二区三区 | 男人视频网站 | 国产午夜福利一区 | 天堂在线中文网 | 荒岛淫众女h文小说 | 一区二区三区免费看 | 成年人在线观看视频网站 | 久久国产日韩欧美 | 在线观看9.1 | 九九视频免费观看 | 色图视频 | 麻豆精品视频免费观看 | 九九九在线观看 | 99在线观看免费 | 91avcom| 在线视频日韩精品 | 免费福利影院 | 久插网| 传媒av在线 | 欧美一区二区影院 | jzzijzzij日本成熟少妇 | 久久久www成人免费精品 | 秋霞精品一区二区三区 | 欧美成人动态图 | 亚洲第一色在线 | 亚洲成人精品视频 | 成人性生交大片免费看96 | 成人在线视频免费观看 | 稀缺小u女呦精品呦 | www.毛片com |