美文网首页我的Android武功秘籍
创建自己的 Android 依赖库

创建自己的 Android 依赖库

作者: 白银之火 | 来源:发表于2017-11-23 16:44 被阅读95次

    使用 JitPack 创建自己的依赖库大致流程如下:
    一、创建 library 项目
    二、上传 library 项目到 GitHub
    三、使用 JitPack 生成依赖
    四、使用到项目中

    1.创建一个 library

    通过 File -> New -> New Module ,选择 library ,创建一个新的Module项目。

    或者将原项目的 build.gradle 内的 apply (一般在第一行)

    apply plugin: 'com.android.application'
    

    修改成

    apply plugin: 'com.android.library'
    

    这样就能创建一个 Module。

    2.Module 添加 maven 依赖

    要在 JitPack 使用的话,需要添加 maven 依赖。

    在根目录的 build.gradle 加入 maven-plugin

        dependencies {
            ...
            classpath 'com.github.dcendents:android-maven-gradle-plugin:1.4.1'
        }
    

    项目的 build.gradle 添加

    ...
    apply plugin: 'com.github.dcendents.android-maven'
    

    3.将 Module 项目上传到 github,并提交 release

    release
    填写 release 和 version

    4.使用 JitPack 生成依赖

    打开 https://jitpack.io/ 并将 github 的项目地址填入,点击 Look Up
    会看到刚刚提交的 release 的版本号在列表中

    有多个版本的话都会显示在内

    5.使用你自己的项目作为依赖库

    点击 get it 后,等待 build 完成,显示为绿色图标后,就可以在你的项目内添加依赖使用了。
    使用只需要2个步骤:

    • 在需要使用的项目根目录添加
        allprojects {
            repositories {
                ...
                maven { url 'https://jitpack.io' }
            }
        }
    
    • 在项目添加依赖(以本项目为例)
        dependencies {
                compile 'com.github.look0089:MyDialog:v1.7'
        }
    

    6.徽章

    可以 JitPack 页面下复制徽章,用于在 github 中显示 jitpack 版本信息,像这样:
    [图片上传失败...(image-138309-1511426646302)]

    常见问题:

    1、library 中不能使用 switch case,会报错。需改成 if else。

    2、JitPack 的 列表是根据 GitHub 的 Release 来获取的。而 Release 的顺序并不是按照提交顺序排序,似乎是根据 Tags 的字母排序。

    因此最好是按一定格式进行排序,或者使用 -SNAPSHOT 获取最新的,例如:

        dependencies {
                compile 'com.github.look0089:MyDialog:-SNAPSHOT'
        }
    

    3、报错:Unable to load class 'org.gradle.api.internal.artifacts.ImmutableModuleIdentifierFactory'.

    android-maven-gradle-plugin与Gradle版本对比图

    需要检查一下项目对应的 gradle 版本,否则第二步的 Module 添加 maven 依赖 时编译会提示找不到 class 文件。

    相关文章

      网友评论

      本文标题:创建自己的 Android 依赖库

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