安卓封装SDK,将安卓代码打成arr包,封装的SDK的第三方库也可以正常使用。

需求:公司要封装一个SDK给客户使用,但是不能透漏核心的代码。需要把代码封装成SDK,并且要混淆代码。如果代码中不含有第三方库就非常简单这里我就不说了。如果代码中含有第三方库,又想让SDK中的第三方库正常使用。请往下看。

 

第一步:创建Android Library,

安卓封装SDK,将安卓代码打成arr包,封装的SDK的第三方库也可以正常使用。_第1张图片

创建后目录如下:

安卓封装SDK,将安卓代码打成arr包,封装的SDK的第三方库也可以正常使用。_第2张图片

这里我会把新建的mylibrary打成一个arr包。打成arr包和jar的区别我简单提一下。打成Arr包可以包含资源。而打成jar是不包含资源的。所以这里我把新建的mylibrary打成一个arr包。

 

第二步:更改build.gradle文件

安卓封装SDK,将安卓代码打成arr包,封装的SDK的第三方库也可以正常使用。_第3张图片

 

添加

apply plugin: "maven"
version = new Date().format("yyyyMMddHHmm")

uploadArchives {
    repositories {
        mavenDeployer {
            repository(url: uri('../repo')) //定义本地maven仓库的地址
            version '1.0.0'
            pom.artifactId = "testlibrary"
            pom.groupId = "com.yuan.testlibrary"
            pom.name = "testlibrary"
            pom.packaging = 'aar'
        }
    }
}

安卓封装SDK,将安卓代码打成arr包,封装的SDK的第三方库也可以正常使用。_第4张图片

maven{
    url "../repo"
}

完成以上配置

 

第三步:

安卓封装SDK,将安卓代码打成arr包,封装的SDK的第三方库也可以正常使用。_第5张图片

双击,箭头指向的uploadArchives即可生成arr包

 

安卓封装SDK,将安卓代码打成arr包,封装的SDK的第三方库也可以正常使用。_第6张图片

生成了repo,arr包就在该目录下。

 

第四步:引入arr包

implementation('com.yuan.testlibrary:testlibrary:1.0.0@aar') { transitive = true }

安卓封装SDK,将安卓代码打成arr包,封装的SDK的第三方库也可以正常使用。_第7张图片

引入依赖之后,就可以看到SDK中的代码已经出现在库中。

安卓封装SDK,将安卓代码打成arr包,封装的SDK的第三方库也可以正常使用。_第8张图片

 

接下来就可以引用SDK中的代码了。此时SDK中的第三方库也可以正常使用。

安卓封装SDK,将安卓代码打成arr包,封装的SDK的第三方库也可以正常使用。_第9张图片

CSDN下载地址:https://download.csdn.net/download/qq_36388797/11302861

上面是要积分的,本来想选0积分,但是选不了。如果不想通过积分下载,可以留言。我会单独给你发代码。

你可能感兴趣的:(安卓)