当前位置: 首页 > news >正文

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

目录

  • 1.创建FlutterModule项目,相当于Android项目里面的module库;
  • 2.或者编辑aar引用
  • 3.创建Android原生项目
  • 3.直接运行跑起来

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 语言,

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'.

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

maven {
            url = uri("https://storage.googleapis.com/download.flutter.io")
        }

在这里插入图片描述

在这里插入图片描述

需要在AndroidManifest.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

相关文章:

  • Linux 入门:常用命令速查手册
  • c# txt文档的实时显示,用来查看发送接收指令
  • Linux练级宝典->基础IO
  • ​【C++设计模式】第二十二篇:访问者模式(Visitor)
  • HTML块级元素和内联元素(简单易懂)
  • Scrum介绍(一种Agile敏捷开发框架,主要用于复杂项目的管理和交付。其核心思想是通过迭代、增量的方式,快速响应变化,持续交付高价值成果)
  • 基于Python+SQLite实现校园信息化统计平台
  • 32单片机——KEY
  • Java 泛型
  • 生活之味:苦与甜的交织-中小企实战运营和营销工作室博客
  • 大模型叙事下的百度智能云:比创新更重要的,是创新的扩散
  • 第九课:WebSocket与实时通信技术解析
  • TCP三次握手与四次挥手详解:建立与断开连接的底层逻辑
  • mysql主从复制
  • python pip及常用国内镜像源
  • Java爬虫测试淘宝快递费接口的完整指南
  • Visual Studio 安装及使用教程(Windows)【安装】
  • QT系列教程(15) 鼠标事件
  • LuaJIT 学习(1)—— LuaJIT介绍
  • RabbitMQ重复消费如何解决
  • 空调+零食助顶级赛马备战,上海环球马术冠军赛将焕新登场
  • 涉嫌严重违纪违法,57岁证监会副主席王建军被查
  • 三大猪企一季度同比均实现扭亏为盈,营收同比均实现增长
  • 神十九飞船已撤离空间站,计划于今日中午返回东风着陆场
  • 解读|特朗普“助攻”下加拿大自由党“惨胜”,卡尼仍需克服“特鲁多阴影”
  • 罗马教皇方济各葬礼在梵蒂冈举行