首先,只有Flutter Module Project可以產生aar,Flutter App Project不行 網路上有一些說法是可以在pubspec.yaml最後面新增 module 程式碼區塊,但目前沒有專案有成功過。 Flutter Module Project 比Flutter App Project 少了個別平台的程式碼 你在Flutter Module Project裡面不會看到android的區塊,只會有.android,這是自動產生,就算更改之後也會被重新產生的覆蓋。 所以需要把在之前寫的.java或.kt和一堆可能也有CMake之類的直接寫在aar要放的Android專案內( MethodChannel 可以很正常的溝通)這部分就考驗你對本來專案或Android專案的了解程度了。 也因為是直接寫在父專案內,所以如果有的話也記得也要 implementation 套件和聲明需要的權限。 Flutter build aar的限制: 在筆者撰文的當下(希望這篇不要躺在我的草稿欄太久...),一個專案只能有一個Flutter aar(補充:Flutter 1.26以後開始有測試版可以支援多個) 需要匯入 Java 8 僅支援AndroidX 僅支援x86_64,armeabi-v7a 和 arm64-v8a的Ahead-of-Time (AOT)函式庫 Flutter專案和Android專案不可以用同個package名稱 遷移到AndroidX gradle.properties(Project) suppport_library_version = 28.0.0 android.useDeprecatedNdk = true android.useAndroidX = true android.enableJetifier = true 記得點選 Sync Now 匯入 Java 8 build.gradle(Module) android { compileOptions { sourceCompatibility JavaVersion. VERSION_1_8 targetCompatibility JavaVersion. VERSION_1_8 } } 開始產生aar和匯入 一開始步驟很簡單,可
- 取得連結
- 以電子郵件傳送
- 其他應用程式