使用AndroidStudio进行SDK开发

    SDK就是软件开发工具包(Software Development Kit)的缩写,在开发app的过程中我们肯定不可避免的要用到第三方的开源工具包,比如熟悉的recyclerview、support-v4、okhttp等等。在AndroidStudio中我们可以使用这种:

implementation 'com.android.support:recyclerview-v7:27.1.1'

或者引用外部jar包或者aar的方式进行使用。

    那么如果要我们去开发一个SDK,提供某些功能的,要如何去做呢?

    其实没那么难,我们进行app开发的时候怎么去写代码,开发SDK的时候就如何去写代码,区别是在你的SDK是要提供给一个或者多个人去用的,那么你考虑的东西肯定就比普通开发app的时候要多。

    下面列出本人进行SDK过程中的思考:

  1. SDK的整体架构应该长什么样
  2. 入口类是什么,需要单例嘛,应该提供什么功能,入口类代码不宜过多
  3. SDK是否有大小要求,如果有,怎样做到最小
  4. 是否需要用到加密技术,如果是你使用哪几种,使用的时候是否会增加原有SDK的大小
  5. 是否需要使用插件化技术

    如果以上问题都有考虑好了,就可以开始开发了:

    一:新建Android Library项目

    二:正常的书写代码,设置好需要暴露的接口,代码不要太多

    

    三:在lib工程的gradle中编写生成工具,生成Jar包

    

//Copy类型
task makeJar(type: Copy) {
    //删除存在的
    delete 'build/libs/TestSDK.jar'
    //设置拷贝的文件
    from('build/intermediates/packaged-classes/release/')
    //打进jar包后的文件目录
    into('build/libs/')
    //include ,exclude参数来设置过滤
    include('classes.jar')
    //指定打包的class
    include "com/mobile/testsdk/*.class"
    //重命名
    rename ('classes.jar', 'TestSDK.jar')
}
makeJar.dependsOn(build)

    四:在终端窗口执行  gradlew makeJar

    其中makeJar就是你copy类型指定的名称,执行完成就会在libs目录下展示了

    五:说一点题外话

    有很多时候开发SDK的时候需要用到第三方的jar包,那么怎么将第三方jar也打进去我们的sdk呢?

    答:建议使用fatjar,我只在eclipse上使用过,非常好用,不管是打包assets里面的东西,还是打包第三方jar都很好用,在androidstudio上目前没发现好用的工具。有其他小伙伴可以分享一下

发布了15 篇原创文章 · 获赞 17 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/HeartCircle/article/details/100664240