Android将其他工程引入作为module开发

本文介绍了Android模块化开发中Module的引入及转换方法。可直接引入其他工程作为新Module,还阐述了将Module转为单独可打包APK,以及将可打包的Module转为依赖Module的具体步骤,同时提到转换时的注意事项和模块化开发的优势。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

引入过程:

一.直接引入其他工程作为新的module
图一
通过File->New->Import Module即可
图二
如果引入的是一个完整可打包的工程的话moduleName会与主Module重名导致:app不能被引入,改为其他名字即可。如果引入工程有依赖其他module则也会如图默认选中引入。

注:这样并没有把新module作为library添加到主Module中,这样引入的是仍然可打包的module

一、module转单独可打包apk

1.在project structure中先将主module的引用去掉;
在这里插入图片描述
在这里插入图片描述
2.将要打包的module的build.gradle第一行的apply从library改成appliction,同时添加个applicationId;

在这里插入图片描述

3.要打包的module下的androidManifest.xml中添加启动activity(一般测试功能的activity即可),同时在application节点下添加基本属性:

android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme"

在这里插入图片描述

在右侧的gradle选择处clean 下module:
在这里插入图片描述

然后选择打包的module就可以打包了:

在这里插入图片描述
在这里插入图片描述

二、可打包的module转依赖module:

1.去掉可打包的module下的androidmanifest.xml的application节点下的配置及启动的activity(测试activity):
在这里插入图片描述
2.去掉可打包的build.gradle下的applicationId及修改apply为library:
在这里插入图片描述

3.主module下添加module依赖:

在这里插入图片描述

然后就可以把完成功能的module打包进app里边了。

把能单独打包的app转成可依赖的module时注意看看它的application里边初始化的一些东西转移到主module里边,同时是不是根目录下的gradle文件是不是也要复制些库依赖。

注:上面的把可打包的module转成可依赖的module的方法同时也可以把单独的app打包成aar包,然后引入到想引入工程的app 中。

优势:把单独的module转成可打包的module可以开发单独的module下的功能,且编译打包速度比较快,在工程比较大时建议使用。

### Android Studio 工程结构及开发介绍 #### 一、Android Studio 的基本概念 Android Studio 是 Google 提供的一款集成开发环境 (IDE),专为 Android 应用程序开发设计。它基于 IntelliJ IDEA 并集成了许多功能强大的工具,帮助开发者更高效地完成应用程序的设计与实现。 #### 二、工程目录结构解析 以下是 Android Studio 中典型的项目目录及其组成部分: 1. **`app/`** 这是主要的应用模块所在位置,包含了应用的核心源码和资源文件[^1]。 2. **`gradle/`** 此目录包含 Gradle 构建系统的相关文件。Gradle 负责处理项目的依赖项管理和构建过程[^3]。具体来说: - `build.gradle`: 存在两个级别的版本——项目级和模块级。它们分别定义全局设置以及特定于模块的配置[^2]。 - `proguard-rules.pro`: 定义 Java 文件中的代码混淆规则,保护知识产权并优化 APK 大小。 - `gradle.properties`: 配置命令行参数,默认情况下不需要修改。 - `settings.gradle`: 明确指定参与编译的各个模块。 - `local.properties`: 描述本地 SDK 和 NDK 路径等信息,在不同机器上会有所不同。 3. **`src/main/java/`** 放置所有的 Java 或 Kotlin 源代码文件。这些类构成了整个应用程序的功能逻辑。 4. **`src/main/res/`** 包含所有非代码资源,比如布局 XML 文件 (`layout`)、图片 (`drawable`)、字符串常量 (`values/strings.xml`) 等。 5. **`manifests/AndroidManifest.xml`** 表述关于应用的基本元数据,例如包名、权限声明、组件注册等内容。 6. **其他辅助文件夹** 如测试用例路径(`test`, `androidTest`)以及其他可能存在的变体(build variants)或产品风味(product flavors)。 #### 三、Gradle 自动化构建的作用 Gradle 不仅简化了复杂的构建流程,还提供了灵活的任务定制能力。通过脚本编写可以自动执行诸如下载库依赖、运行单元测试甚至分发最终产物等一系列操作。 ```groovy // 示例:简单的 module-level build.gradle 文件片段 apply plugin: 'com.android.application' android { compileSdkVersion 30 defaultConfig { applicationId "com.example.myapp" minSdkVersion 21 targetSdkVersion 30 versionCode 1 versionName "1.0" } } dependencies { implementation 'com.google.code.gson:gson:2.8.7' } ``` 上述代码展示了如何利用 Groovy DSL 来设定目标 API 版本号以及引入第三方 JSON 解析器 GSON 库作为依赖关系的一部分。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值