Flutter——Android与Flutter混合开发详细教程

目录

1.创建FlutterModule项目,相当于Android项目里面的module库;




2.或者编辑aar引用

执行 flutter build aar 一直卡在 add-to-app 说明正在下载 com.android.tools.build:gradle:8.1.0 和 distributionUrl=https://services.gradle.org/distributions/gradle-8.0-all.zip 。如果想快速编译成功,可以修改两位置本地已经下载库对应的版本号。

例如:我本地com.android.tools.build:gradle:8.7.3distributionUrl=https://services.gradle.org/distributions/gradle-8.9-bin.zip

编译失败:
Exception in thread "main" java.util.zip.ZipException: zip END header not found

此问题说明,下载的gradle 下载失败了;此时可以按照上面步骤可以解决

编译成功之后,可以按照标红这一块步骤,去宿主安卓项目进行配置,从而引用aar包;

3.创建Android原生项目

这里有两种gradle语言,具体直接参考

我这里选择的是 Groovy DSL 语言,

java 复制代码
setBinding(new Binding([gradle: this]))
evaluate(new File(
        settingsDir.parent,
        'myflutter/.android/include_flutter.groovy'
))

如果有此错误
Caused by: org.gradle.api.internal.plugins.PluginApplicationException: Failed to apply plugin class 'FlutterPlugin'.

请将这一块代码放进去解决报错问题

java 复制代码
maven {
            url = uri("https://storage.googleapis.com/download.flutter.io")
        }

需要在AndroidManifest.xml 文件配置

xml 复制代码
<activity
  android:name="io.flutter.embedding.android.FlutterActivity"
  android:theme="@style/LaunchTheme"
  android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
  android:hardwareAccelerated="true"
  android:windowSoftInputMode="adjustResize"
  />

3.直接运行跑起来

参考文章:
https://docs.flutter.cn/add-to-app/android/project-setup

相关推荐
2501_932750265 分钟前
Android 跑马灯:从一行 XML 到自定义控件
android
传奇开心果编程12 小时前
【Flutter入门练中学】第2课:布局系统
学习·flutter·ui
BoomHe12 小时前
Android Framework 文件应用移植到 AndroidStudio
android
传奇开心果编程13 小时前
【Jetpack Compose基础语法学与练】第8课 rememberSaveable,页面旋转/系统重建保留状态
android·学习·ui·kotlin·android jetpack
>Andre<14 小时前
UFS5.0标准中文全译·卷一:范围、术语与架构
android·linux·嵌入式硬件
事圆则缓15 小时前
Java 8 Lambda、Stream、Optional 与 Android 边界:从回调语法到运行时兼容
android·java
mmsx15 小时前
Android 地图十万要素不卡顿:空间网格 + 渐进式加载的移动端实践
android·大数据·opengl
Godikov16 小时前
Android 工业终端保活实战:前台服务 + 开机自启 + 更新自启的三重保障
android
字节暗面16 小时前
SO加固强度怎么量化?腾讯ACE与FairGuard静态分析实测
android·逆向
君赏17 小时前
FlutterPatch:把 Shorebird 热更新的控制面搬回自己服务器
flutter