Android Studio 发布 Library 到 JCenter

Android Studio 发布 Library 到 JCenter

JCenter 是管理包的地方,可以很方便的使用 Gradle 引用到 JCenter 里面的包,极大的方便了 Android 开发。

想引用 EventBus,一句话搞定:

compile 'org.greenrobot:eventbus:3.0.0'

现在来介绍下怎么把你的 Library 上传到 JCenter,大致的步骤是:

  1. 科学上网
  2. 注册 Bintray 账号
  3. 添加仓库
  4. 添加包
  5. 获取 API KEY
  6. 使用 Gradle 上传 Library 到 仓库
  7. 提交到 JCenter 等待审核
  8. 使用你的 Library

科学上网

最近管得严,科学上网也不容易,文章末尾提供了博主科学上网方式。

注册 Bintray 账号

进入bintray 官网,点击 Sign Up Here 进入注册页面。
bintray 官网
注册页面填写的邮箱一定要用 GMAIL
注册页面
注册成功后,登录到主页面。

添加仓库

在主页面点击 Add New Repository 添加一个 maven 仓库
主页面
填写仓库信息
仓库信息填写页面
填写完信息以后点 Create 按钮,仓库创建完成。

添加包

点击刚添加的仓库进入仓库详情页面,点击 Add New Package 添加包
仓库详情页面
填写包信息
包信息填写页面
Create Package 创建完成。

获取 API KEY

个人信息编辑页面
上图标识获取你的 API KEY,这个在配置 Gradle 的时候用得着。

使用 Gradle 上传 Library 到 仓库

使用人家写好的 Gradle 脚本,只需要添加一点配置就可以了。Github 项目地址 点这里

打开 Android 工程,找到 Project 的 build.gradle 文件:
Project build.gradle
加上两段代码

classpath 'com.novoda:bintray-release:0.8.0'
tasks.withType(Javadoc) {
    options{
        encoding "UTF-8"
        charSet 'UTF-8'
        links "http://docs.oracle.com/javase/7/docs/api"
    }
    options.addStringOption('Xdoclint:none', '-quiet')
}

第二段代码可以避免 Javadoc 失败。

在 Library 的 build.gradle 文件中添加如下代码,可以防止代码检查出异常。

android {
    lintOptions {
        abortOnError false
    }
}

接下来配置上传 Library 信息:

publish {
    userOrg = "niulinguo"
    repoName = "maven"
    groupId = 'com.niles.test'
    artifactId = 'ttsdk'
    publishVersion = '1.0.2'
    desc = 'this is a desc'
    website = 'https://github.com/linglongxin24/SQLite.git'
}

注意配置的信息要和刚刚在官网上填写的信息一致。
信息对应图示
按照上面的去配置,最后使用 Gradle 引用为:

compile 'com.niles.test:ttsdk:1.0.2'

配置完成后,最后只需要执行一段 Gradle 命令

$ ./gradlew clean build bintrayUpload -PbintrayUser=BINTRAY_USERNAME -PbintrayKey=BINTRAY_KEY -PdryRun=false

其中 BINTRAY_USERNAME 就是用户名,BINTRAY_KEY 就是 API KEY。

等待2分钟左右就可以上传成功,中间可能有很多坑,我会在文章最后总结。

提交到 JCenter 等待审核

回到网页,打开刚刚创建的项目,这时会发现刚上传的 Library 已经在里面了。
Library 详情页面
提交审核页面如下图
提交审核页面
填写 Comments 信息,点击 Send 提交审核。大概一天以后可以收到审核结果信息。


第二天:

进入官网 ,你将收到一条信息:
收件箱
通过审核了有木有,比上架 iOS 容易一百倍有木有~

使用你的 Library

审核成功之后,想引用你的 Library,只需要一句话

compile 'com.niles.test:ttsdk:1.0.2'

非常炫酷!!!


可能会遇到的问题

Q:怎么科学上网?

A:
不会科学上网的 Android 开发只能是个好码农。不会科学上网,你就不能获取一手的学习资料,不能解决冷门的 BUG,不能升职加薪,不能赢取白富美,只能当个好码农。想要科学上网,加他微信 hemage99 咨询,299一年,好贵的说。

Q:Gradle 脚本执行 bintrayUpload 命令 FAILURE?

A:
1. 检查你的 userOrgrepoNamegroupIdartifactId 配置是否正确。
2. 检查 gradle.properties 是否配置了代理服务器信息,注释掉。
3. 重启电脑。

Q:代码混淆

A:
需要将 Library 的 build.gradle 中修改 minifyEnabled 属性:

release {
    minifyEnabled true
    proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}

不想混淆的代码可以使用 Android 注解 android.support.annotation.Keep

@Keep
public static boolean isServiceBond() {
    return sTicService != null;
}

Q:技术支持

A:
需要技术支持的朋友可以加我微信哦 niulinguo12138

注:我使用的环境是 MacOS,对 Windows 系统不熟哦。

微信名片

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值