# ProjectFrame
**Repository Path**: andeseng/ProjectFrame
## Basic Information
- **Project Name**: ProjectFrame
- **Description**: 基于mvvm+jecpack 写一个项目通用框架
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2021-12-27
- **Last Updated**: 2022-04-23
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
## config.gradle 作为第三方库依赖管理文件 (组件化开发)
- publicLibrary 作为一个module运行的必要依赖库 放在一个数组中 其他的gradle只需要依赖这个数组就可以了
- 如果gradle版本是能依赖一个数组可以尝试遍历数组
## library 和 application 切换
* 1 需要在config.gradle 中定义个bool类型的成员变量 在module的gradle文件中判断这个是true还是false
``` kotlin
if (rootProject.ext.android.is_Application){
apply plugin: 'com.android.application'
} else {
apply plugin: 'com.android.library'
}
```
* 2 在 defaultConfig 配置里面判断
```kotlin
//if (rootProject.ext.android.is_Application){
// applicationId "xxx"
//}
```
* 3 在main 目录下 新建已给文件夹比如 module文件夹 吧manifest文件复制进去 删除只有包名和 application节点和剩余的组件 然后在 android 节点下设置
```kotlin
// sourceSets{
// main{
// if (!rootProject.ext.android.is_Application){
// manifest.srcFile 'src/main/module/AndroidManifest.xml'
// } else {
// manifest.srcFile 'src/main/AndroidManifest.xml'
// }
//
// java{ //指定这个文件夹是java文件编译文件 编译是会编译成.c文件 比如在application 需要一个application 那么我们可以在自己的module定义一个自己的applicaiton
// java.srcDir 'src/main/test'
// }
// }
//}
```
## 新建一个module 如果有布局文件的话 需要在manifest.xml文件中声明如下 适配
```java
//
//
```