# flutter_plugin **Repository Path**: joinli/flutter_plugin ## Basic Information - **Project Name**: flutter_plugin - **Description**: flutter打包aar实例 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 0 - **Created**: 2022-03-31 - **Last Updated**: 2025-03-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ### fluuter项目打包aar集成到现有原生app #### 项目结构 * flutter_plugin --flutter插件,业务代码都写在这里面 *      ------example 只包含一个man.dart,用来进行开发测试 *      ------flutter_module 只包含一个man.dart配置启动路由,最后用做打包aar *      ------flutter_boost-null-safety 咸鱼开源混合开发框架,用做与原生交互 *            已对flutter 2.10做兼容处理,目前官方的开源项目还未支持2.10版本 #### 方案 * flutter组最终生成aar文件,宿主用aar的方式嵌入Flutter,以解决组件化拆分 * 原生组无需Flutter环境,解决开发人员环境不一致问题 * 原生组开发和打包时无需改动Flutter工程 #### flutter项目打包aar ##### 1. 跳转到flutter_module下 ``` cd flutter_module ``` ##### 2. 执行打包aar ``` flutter build aar ``` ##### 3. 输出目录 ``` /flutter_plugin/flutter_module/build/host/outputs/repo ``` #### 主项目引入aar 在宿主应用最外层修改 build.gradle 文件 ``` maven { url "https://storage.flutter-io.cn/download.flutter.io" //可以引用远程仓库 } maven { url '/repo' //flutter aar 目录 } ``` 在宿主应用程序中修改 app/build.gradle 文件,使其包含本地存储库和上述依赖项: ``` dependencies { debugImplementation 'com.nxin.flutter_module:flutter_debug:1.0' profileImplementation 'com.nxin.flutter_module:flutter_profile:1.0' releaseImplementation 'com.nxin.flutter_module:flutter_release:1.0' } ``` ##### 项目sdk版本 flutter版本:2.10.1 dart版本: 2.16.1 kotlin版本: 1.4.21 agora_rtc_engine: ^5.0.0 agora.config.dart 为声网配置文件,测试id有效期24小时