1,創(chuàng)建flutter module項目:創(chuàng)建flutter項目有四種:flutter項目,flutter插件逞敷,flutter package惕蹄,flutter module蚯涮。混合開發(fā)要創(chuàng)建flutter module卖陵,在該項目中編寫flutter功能模塊代碼遭顶。
2,在原項目配置:settings.gradle 文件中加入
setBinding(new Binding([gradle:this]))
evaluate(new File(
? ? ? ? settingsDir.parentFile,//父目錄
? ? ? ? 'android_flutter_module/.android/include_flutter.groovy'// flutter module項目中include_flutter.groovy'路徑
))
3泪蔫,在原項目引入flutter項目:build.gradle 加入?implementation project(':flutter')
4棒旗,在application中初始化:在application onCreate中加入FlutterMain.startInitialization(this);
5,創(chuàng)建一個繼承FlutterActivity的activity
運行出錯:
v4包兼容的問題撩荣,要把原項目與flutter module項目中的.android項目包里的所有引入的包要同一版本铣揉,要不會提示版本兼容錯誤,app文件現(xiàn)在build.gradle餐曹,和flutter文件下的build.gradle都要改成與原項目相同的版本
還有版本要在27以上(低版本的提示找不生命周期方法)
正式包運行崩潰問題老速,沒有做混淆處理的話正式包要關(guān)閉混淆
運行flutter相關(guān)模塊代碼崩潰,flutter沒有在application中初始化
VM snapshot must be valid.崩潰:
報這個錯誤:禁掉友盟多平臺打包,即可正常運行
AndroidManifest.xml---------
<!--<meta-data-->
? ? ? ? ? ? <!--android:name="UMENG_CHANNEL"-->
? ? ? ? ? ? <!--android:value="${UMENG_CHANNEL_VALUE}"/>-->
app.gradle------
//productFlavors {
// XXXXXXXXXXXXXXXXXX
//}
創(chuàng)建flutter項目生成空文件夾凸主,沒有內(nèi)容橘券,原因是卡在正在執(zhí)行的futter任務(wù)而不會執(zhí)行創(chuàng)建,如果任務(wù)一直卡著可以重啟studio