Android将项目封装为SDK

1、新建一个Android 项目
2、将AndroidManifest修改为(不要有activity,包名换成自己的)



    
    

3、将app层的build.gradle中的

apply plugin: 'com.android.application'

改为

apply plugin: 'com.android.library'

并且添加

apply from: 'maven-release-aar.gradle'

然后删除defaultConfig 中 applicationId
4、将导入的方法 implementation 换成 api

api 'com.google.code.gson:gson:2.8.1'

5、新建maven-release-aar.gradle文件,将其放入app目录中


1.png

6、将下面代码拷贝到maven-release-aar.gradle中

apply plugin: 'maven'
ext {
    PUBLISH_GROUP_ID = 'com.hades.toolkit'//包名,换成自己的
    PUBLISH_ARTIFACT_ID = project.name //名称,一般是app,也可以自己换
    VERSION_CODE = 1
    VERSION_NAME = "1.0.1" //版本
}
uploadArchives {
    repositories.mavenDeployer {
        def localMavenRepo = 'file://' + new File(rootDir.parentFile, 'ToolkitMaven').absolutePath //这里会将maven仓库生成到你项目目录层ToolkitMaven文件夹中,具体目录可以自己改
        repository(url: localMavenRepo)
        pom.project {
            groupId project.PUBLISH_GROUP_ID
            artifactId project.PUBLISH_ARTIFACT_ID
            version project.VERSION_NAME
        }
    }
}
 
//以下代码会生成jar包源文件
task androidSourcesJar(type: Jar) {
    classifier = 'sources'
    from android.sourceSets.main.java.sourceFiles
}
artifacts {
    archives androidSourcesJar
}

7、然后选择uploadArchives生成本地仓库


2.png

下面是生成的本地仓库D:\Android\AndroidStudioProject\ToolkitMaven(D:\Android\AndroidStudioProject\路径就是你项目存放的路径),以及生成的arr文件的目录


3.png

4.png

二、在其他项目中导入本地仓库的步骤

(注意不要使用常规的导入arr包的方式导入,这样不会将SDK项目中的依赖包一起封装进来)

1、在project层的build.gradle中添加如下代码

allprojects {
    repositories {
        google()
        jcenter()
        maven{  url "file://D:\\Android\\AndroidStudioProject\\ToolkitMaven"}//该路径为你生成的本地仓库的路径
    }
}

2、在app层build.gradle中导入本地仓库

implementation 'com.hades.toolkit:app:1.0.1'//格式为groupId:artifactId:version

你可能感兴趣的:(Android将项目封装为SDK)