開發(fā)組件tkoul_channel_plugin
一.前置準備工作
1.申請谷歌賬號届巩,發(fā)布的話會用,最好能翻墻礼烈,直接google右上角創(chuàng)建賬號即可(吧啦吧啦-- 谷歌賬號申請完畢)
2.打開 https://pub.dev/
右上角登錄峭拘,選著google賬號 同步登陸即可。
3.弄個域名咬扇,隨便買甲葬,發(fā)布對外創(chuàng)建驗證發(fā)布者需要關聯(lián)域名。
二.開發(fā)階段
1.用指令創(chuàng)建項目,以plugin(特殊的package)為例懈贺。指令flutter create 忘了是啥直接后面加--help能看到各個指令的描述
flutter create --org com.007icu --template=plugin -a java -i swift --platforms=ios,android
--org 為組織名稱 填自己的包名/bundleid
--template有如下參數(shù),我們根據(jù)需要選擇自己要創(chuàng)建的经窖。這里以plugin為例坡垫。app為flutter主項目,module 為開發(fā)供原生調(diào)用的庫画侣。package為純 dart庫冰悠。plugin為各平臺的三方庫。
-t, --template=<type> Specify the type of project to create.
[app] (default) Generate a Flutter application.
[module] Generate a project to add a Flutter module to an
existing Android or iOS application.
[package] Generate a shareable Flutter project containing
modular Dart code.
[plugin] Generate a shareable Flutter project containing an
API in Dart code with a platform-specific
implementation for Android, for iOS code, or for
--platforms=ios,android寫法為左側(cè),可填入平臺[ios (default), android (default), windows (default), linux (default), macos (default), web (default)]
-a java -i swift a指andriod配乱,用java,i指iOS溉卓,用swift
2.吧啦吧啦。搬泥。的诵。 開發(fā)完畢。(flutter2.0以后創(chuàng)建完項目佑钾,自動生成相關的簡單代碼西疤,可根據(jù)需要改動),其它深入開發(fā)休溶,移步度娘代赁,搜索關鍵字 flutter 插件
flutter pub庫開發(fā)
flutter package開發(fā)
等,有很多教程可學習參考兽掰。
三.發(fā)布階段
1.發(fā)布公有庫
1.登錄https://pub.dev/
芭碍,右上角谷歌賬號同步登陸。確保翻墻了孽尽,沒翻墻準備配置代理吧窖壕。
2.右上角選擇My pub.dev 點開選擇 Create publisher。跳轉(zhuǎn)界面杉女,吧啦吧啦瞻讽,閱讀完不,Domain Name后面填入自己的域名-實際存在的域名(www.省略熏挎,只填寫后面即可)速勇,后需要配置添加dns解析,有無備案都行坎拐。
3.吧啦吧啦烦磁,一直點擊確認,OK等按鈕哼勇。然后卡在這都伪?下一步做什么呢
4.下一步打開谷歌搜索控制臺https://search.google.com/search-console/about ,立即使用积担,會出現(xiàn)兩欄驗證陨晶,一個是域名(www.省略,只填寫后面即可)磅轻,一個是https的ip地址珍逸。這里選擇域名方式逐虚,跟第2步對應起來。
5.點擊確定谆膳,會生成TXT的域名配置叭爱。
6.去自己的域名管理網(wǎng)站,京東云漱病,阿里云买雾,百度云,騰訊云杨帽,華為云漓穿。。注盈。均可晃危,選擇域名解析,添加TXT類型的解析老客。不知道怎么做的百度搜索下僚饭。把谷歌生成的txt解析配置添加到自己的域名解析里面。
7.返回第2步胧砰,重復鳍鸵,提示驗證成功。
8.發(fā)布前檢查尉间。如果項目有BUG 或者語法編譯不過偿乖,會有提示
flutter packages pub publish --dry-run
9.發(fā)布
flutter packages pub publish
(注意:首次發(fā)布需要驗證,失敗用flutter packages pub publish --server=https://pub.dartlang.org 下面特別注意有說明)
特別注意:
1.發(fā)布的LICENSE文件哲嘲,默認創(chuàng)建生成內(nèi)容為todo贪薪。需要刪除,添加點內(nèi)容撤蚊,就是聲明
比如換成
項目名
MIT License
描述內(nèi)容(本軟件免費使用古掏,對外發(fā)布 xxxxxx)
2.很多開發(fā)者是沒有翻墻损话,一般flutter開發(fā)下載安裝都是基于國內(nèi)鏡像侦啸。即安裝時,讓配置的環(huán)境變量丧枪。需要屏蔽了光涂,因為發(fā)布到公網(wǎng)-即https://pub.dartlang.org。發(fā)布成功記得再打開拧烦。
#export PUB_HOSTED_URL=https://pub.flutter-io.cn
#export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
3.如發(fā)布失敗忘闻,嘗試以下指令,指定地址
flutter packages pub publish --server=https://pub.dartlang.org
執(zhí)行完畢恋博,仔細看終端提示:用web打開鏈接 https:xxxxxxx 很長的一個串齐佳。這是因為第一次發(fā)布私恬,需要去驗證。復制這個地址串炼吴,google打開本鸣,使用自己的賬號驗證一下。返回終端硅蹦,就會發(fā)布成功荣德。
Successfully uploaded xxxx
2.發(fā)布私有庫
發(fā)布私有倉庫有兩種方式
1.直接命令行后面加git庫地址
flutter packages pub publish --server=私有倉庫url
2.在pubspec.yaml文件中添加私有倉庫地址
name: tkoul_channel_plugin
description: A new flutter plugin project.
version: 0.0.1
homepage: https://github.com/Tkoul/tkoul_channel_plugin
///在這基礎上添加另一個屬性
publish_to: 私有倉庫url
第2步配置完地址就可以執(zhí)行對外發(fā)布的指令,會讀取配置的地址童芹,發(fā)布到私有庫涮瞻。執(zhí)行
flutter packages pub publish
四.引用私有倉庫的項目
跟公有庫差不多,但是需要配置host
tkoul_channel_plugin: ///項目名
hosted:
name: tkoul_channel_plugin ///項目名
url: xxxx............ ///私有倉庫地址
version: ^0.0.1 ///版本號
歷時2天假褪,開發(fā)并發(fā)布了tkoul_channel_plugin庫署咽。本庫用于flutter與iOS以及Andriod的交互庫。在通信的基礎上生音,進一步對iOS和andriod進行封裝艇抠,只需要簡單的注入,就可以在任意類里面實現(xiàn)協(xié)議方法久锥,完成分布式調(diào)用家淤。
項目地址:
https://pub.dev/packages/tkoul_channel_plugin
碼字很累,謝謝給個贊瑟由!
從無到有參考了以下諸位的文章:
https://blog.csdn.net/tp7309/article/details/104758960/
http://www.reibang.com/p/f698623fccf1
http://www.reibang.com/p/5c3721efc6f9