美文网首页
Android学习笔记(二):将module封装为可复用组件

Android学习笔记(二):将module封装为可复用组件

作者: CoderAPang | 来源:发表于2019-12-26 17:23 被阅读0次

    以往我们需要一些小组件的时候都是去GitHub上寻找,然后在gradle中用implementation命令导入项目中。这样也引起了一个思考,怎么将自己项目中可复用的部分进行封装和发布,采用同样的方式进行导入。

    主要包含以下几个步骤:
    (1)、开发组件的Demo,并修改为module组件
    (2)、在新项目中导入刚才的module,测试是否能使用
    (3)、发布到github,设置版本
    (4)、托管到https://jitpack.io
    (5)、如何使用

    以一个时间小控件为例,详细说明上述步骤。

    第一步:开发组件Demo,并修改为module组件

    1、新建一个empty activity项目,开发出demo,可运行。
    2、修改gradle文件中以下两处,将项目性质由application修改为library
    apply plugin: 'com.android.application'修改为apply plugin: 'com.android.library'
    applicationId "com.example.testapplication"删除

    原gradle文件 修改后的gradle文件

    3、删除AndroidManifest.xml文件里红框中的部分


    AndroidManifest.xml

    至此,application就被改为了一个module,第一步完成!关闭此项目。

    第二步:在新项目中导入刚才的module,测试是否能使用

    1、新建一个项目,在新项目中file->new->import module

    模块导入
    2、选择刚才已经被改为module的项目
    image.png
    3、勾选import,并给该module取个别名,因为"app"这个名字会和主application的名称重复

    点击finish后可以在目录结构中看到该module,与app模块平行
    image.png
    4、修改app文件的gradle,用implemention命令导入CustomDatePicker这个module。
    implementation project(path: ':CustomDatePicker') ,path里面的就是module名称
    image.png
    5、导入CustomDatePicker这个module的依赖
    点击file->projectStructure打开项目结构
    project结构
    点击Dependencis,选择主模块app,点击+号,选择Module Dependency
    image.png
    再选择CustomDatePicker这个module,如图所示则导入成功。第二步完成! image.png

    导入module后,项目可能会报一些错误,比如在module中是不允许使用switch来对系统资源做选择的,需要改为if else的方式。
    例如:

    switch(view.getId()){
    case R.id.edit1:
    ......
    }
    

    要改为:

    if(view.getId() == R.id.edit1){}
    else if()......
    

    还有一些版本之间的问题,可以查询百度解决。

    三、发布到github,设置版本

    测试module可以使用之后,修改该module的gradle文件,添加以下内容
    在第一行之后添加以下两行

    apply plugin: 'com.github.dcendents.android-maven'
    
    group='com.github.你的github账户名字'
    

    在buildscript后照抄以下四行

    dependencies {
            classpath 'com.android.tools.build:gradle:3.0.1'
            classpath 'com.github.dcendents:android-maven-gradle-plugin:2.1'
        }
    

    如下图所示


    image.png

    在github上建立一个新的仓库。将CustomDatePicker这个module的整个文件夹上传上去。


    image.png

    传上去之后,点击releases


    image.png
    点击drafe a new release,创建一个新的版本,填写版本信息。
    image.png

    提交之后此步骤完成!

    第四步、托管到https://jitpack.io

    用github账号登录该网站,并在搜索框中搜索仓库名称


    image.png

    在版本之后会出现按钮 git it,点击按钮稍等一小会,会出现绿色或者红色的Log,绿色表示检测通过。组件发布的所有工作就完成了。
    红色表示代码里有一些bug,点击该文件,查看bug在哪,修改代码之后,更新到github改个版本号,继续来Jitpack测试。


    image.png

    一般问题会出现在 build failed这行之前。

    第五步、使用方法

    刚才那个页面,往下拖动滚动条就能看到使用方式,在项目中使用implementation命令引用即可,记得将Tag改为正确的版本号,例如本文中为 1.03


    image.png

    相关文章

      网友评论

          本文标题:Android学习笔记(二):将module封装为可复用组件

          本文链接:https://www.haomeiwen.com/subject/yadkoctx.html