在Flutter中,如果我們需要打印日志,如果不進(jìn)行自定義,我們只能使用自帶的print()或者debugPrint()方法進(jìn)行打印,
但是這兩種打印,日志都是默認(rèn)Info層級的日志,很不友好,所以如果需要日志打印層級分明,我們就需要自定義一個
日志打印組件,但是我希望這個打日志的組件也可以以后在其他項目里直接拿來使用.這就需要我們來開發(fā)一個日志的插件了,
再比如我們想在Flutter里面獲取Android設(shè)備的信息,或者就是想用Native實現(xiàn)一個功能,然后能在Flutter里面使用. 等等…
什么是插件
在flutter中,一個插件叫做一個package,使用packages的目的就是為了達(dá)到模塊化,可以創(chuàng)建出可被復(fù)用和共享的代碼,
這和大多數(shù)編程語言中的模塊、包的概念相同。創(chuàng)建出來的package可以在pubspec.yaml中直接依賴。
一個最小化的package包含了兩部分:
一個pubspec.yaml文件:一個元數(shù)據(jù)文件,聲明了聲明了package的名稱、版本、作者等信息。
一個lib文件夾:包含里package的公開代碼,文件夾至少需要存在.dart這個文件。
package的種類
package可以分為兩種:純dart代碼的package和帶有特定平臺代碼的package。
Dart packages:這是一個只有dart代碼的package,里面包含了flutter的特定功能,所以它依賴于flutter的framework,也決定了它只能用在flutter上。
plugin packages:這是一個既包含了dart代碼編寫的api,又包含了平臺(Android/IOS)特定實現(xiàn)的package,可以被Android和ios調(diào)用。