文章目录
简介
原生+Flutter很重要,混合开发,打包aar提供使用
目标
- 1、编译包
- 2、引用跳转界面
1.编译包
前提:
- 设备 Mac
- 开发者 Android开发工程师
- 工具 AndroidStudio(AS)
1.1 创建Module
(1)Application 完全使用flutter进行开发;
(2)Plugin(Flutter插件(为开发人员构建的一个Android或iOS API,调取native模块,平台相关性或者对于flutter实现较复杂的部分))
(3)Package(纯Dart组件,可以理解为flutter的组件化实现方案,实现一些公共widget)
(4)Module(Flutter模块(创建组件,添加到已有Android或iOS app))
File --New Flutter Project-- 选择Flutter Module
1.2配置
进入项目主目录运行代码:
flutter build aar
结果在 build/host/outputs ; 进去可以看到aar包;
同时命令行打印引用方式如下:
2.使用编译包
2.1创建新的android项目
2.1.1 导入aar包
引用1中生成的aar,将生成的aar包,放到项目中
2.1.2 配置 环境
2.1.2.1 配置 app下的gradle
添加:
repositories {
flatDir {
dirs 'libs' // aar目录
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
......
implementation(name: 'flutter_release-1.0', ext: 'aar')
implementation 'io.flutter:flutter_embedding_release:1.0.0-d1bc06f032f9d6c148ea6b96b48261d6f545004f'
implementation 'io.flutter:armeabi_v7a_release:1.0.0-d1bc06f032f9d6c148ea6b96b48261d6f545004f'
implementation 'io.flutter:arm64_v8a_release:1.0.0-d1bc06f032f9d6c148ea6b96b48261d6f545004f'
implementation 'io.flutter:x86_64_release:1.0.0-d1bc06f032f9d6c148ea6b96b48261d6f545004f'
}
- 其中“1.0.0-d1bc06f032f9d6c148ea6b96b48261d6f545004f”
在生成文件的flutter_release-1.0.pom中,替换成你自己的
2.1.2.2 配置AndroidManifest.xml
添加
<activity android:name="io.flutter.embedding.android.FlutterActivity"/>
2.1.2.3 代码中添加跳转
startActivity(FlutterActivity.createDefaultIntent(this));
run
参考资料
自行搜索