日韩性视频-久久久蜜桃-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 包 )的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 免费在线看视频 | 黑人精品欧美一区二区蜜桃 | 日本电影大尺度免费观看 | 欧美日本色图 | 麻豆视频免费版 | 永久免费54看片 | 激情国产精品 | eeuss鲁片一区二区三区在线观看 | 亚洲av无码乱码国产精品 | 林天顾悦瑶笔趣阁 | 噜噜噜网站 | 2019中文字幕在线免费观看 | 国产一伦一伦一伦 | 国产a级网站 | 好好热视频 | 国产欧美精品国产国产专区 | 久久久蜜桃一区二区人 | 国产91高清 | 国产精品高潮呻吟久久av野狼 | 91高清免费| 亚洲成人生活片 | 国产人澡人澡澡澡人碰视频 | 爱福利视频一区二区 | 日本啪啪网站 | 日美毛片 | 97国产在线观看 | 日本少妇在线 | 中文字幕一区二区三区手机版 | 国产美女免费视频 | 91爱在线观看 | 国产免费的av | 亚洲av综合色区无码一区 | 精品国产欧美一区二区三区成人 | 啪啪在线视频 | 久久女同 | 天天操天天做 | 九九亚洲视频 | 国产午夜精品视频 | 亚洲精品国产精华液 | 亚洲精品午夜精品 | 山村大伦淫第1部分阅读小说 | 国产无遮挡免费观看视频网站 | 国产一区二区三区免费观看 | 黑人巨大精品欧美一区二区蜜桃 | 50一60岁老妇女毛片 | 亚洲欧美少妇 | 日本高清在线播放 | 免费日韩一级片 | 香蕉国产999 | 亚洲欧洲日产av | 华丽的外出在线 | 91久久亚洲| 欧美三级精品 | 亚洲综合激情网 | 欧美鲁鲁 | 成人第一页 | 91漂亮少妇露脸在线播放 | 成人在线国产精品 | 久久国产免费视频 | 国产福利一区在线观看 | 国产91在线高潮白浆在线观看 | 天天av天天爽| 中文字幕亚洲综合 | 欧美激情一区二区三级高清视频 | 可以免费看毛片的网站 | 97成人精品视频在线观看 | 激情欧美综合 | 高h免费视频| 麻豆网站免费观看 | 美女色呦呦 | 成人交性视频免费看 | 国产精品2018 | 三级小视频在线观看 | 捆绑调教sm束缚网站 | 国产电影一区二区三区 | 天天干天天舔天天射 | 奇米四色网| 91影院在线观看 | 在线精品视频免费观看 | 美女露胸露尿口 | 久草一本 | 午夜影院在线播放 | 91精品国产欧美一区二区 | 精品一区二区三区免费毛片爱 | 老熟妇午夜毛片一区二区三区 | 亚洲性久久久 | 中文字幕+乱码+中文乱码91 | 91国产视频在线播放 | 国产成人精品123区免费视频 | 亚洲激情久久久 | 亚洲第一页色 | 在线观看自拍 | 狠狠人妻久久久久久综合麻豆 | 亚洲视频四区 | www.超碰| 欧美精品a区| juliaann欧美二区三区 | 蜜臀av性久久久久av蜜臀妖精 | japanesexxxx日本妞 |