论一款炫酷 Android 开源项目的修炼之路(上)

栏目: 软件资讯 · 发布时间: 7年前

内容简介:论一款炫酷 Android 开源项目的修炼之路(上)

本文为作者投稿,版权归作者所有,未经允许,请勿转载。

作者: 孤独狂饮

责编:屠敏,技术之路,共同进步,欢迎技术投稿、给文章纠错,请发送邮件至tumin@csdn.net。

写在前面

在平时的开发过程中,我们经常会查阅很多的资料,最常参考的是 Github 的开源项目。通常在项目的主页面能看到项目的简介和基本使用,并且时不时能看到页面汇中有好多的彩色标签,看起来很酷,很专业,很有逼格,能提升很多的好感度。

前言

本文是一篇很长的文章,其中有很多是素材图片,务必做到每个细节笔者都实践一遍。考虑到大家时间有限,各取所需,所以按照笔者的惯例,首先发布一篇完整版,其次,有一篇缩略版。但本文这次缩略版不好做,所以综合考虑,把每个单独的知识点拆分出来,抓住重点,尽量让大家看的开心。

这里需要提醒的是:

看了完整版就不用看精简集合了,内容都一样。完整版具有一定的连贯性。

精简版就看的清爽,以便快速查找相关资料和步骤。

这里优先汇总下:

相关链接:

完整版:

精简集合版:

总分类:

Github 地址:

正文如下:

范例

我们以最流行的 Android 开源项目 MPAndroidChart 为例来看看。

论一款炫酷 Android 开源项目的修炼之路(上)
  1. 前两个蓝色的标签:开始两个蓝色的标签是开源项目主要贡献者 Twitter 的联系方式,点击后可以跳入到 Twitter 的主页,查看该大神动态。
  2. 橘色的标签:是国外比较有名的开源项目网站 android-arsenal , 很多开源项目都会在这里找到,有该项目的详细介绍。包含组员,版本号,github 项目基础信息等等。点击后会进入 MPAndroidChart 项目的首页,能看到有好多想知道的,不想知道的各种信息。
  3. release蓝色的标签: 点击后能进入到比较有名的 jitpack.io 对应的MPAndroidChart 页面,直接获取 MPAndroidChart 的最新版本,也能看到之前的构建历史。下面会重点介绍 jitpack.io 的使用。
  4. 绿色的标签: 这个比较有意思,是当前想支持的最低版本,MPAndroidChart的最低版本是 api-8。 点击后会进入到Android 2.2–2.2.3 Froyo (API level 8) 的详细介绍。这个功能是 android-arsenal 专门提供 开发者使用的。 下面也会有所介绍。

下面我们将这些标签称之为徽章 ( shields )。

Top 30 Android 开源项目徽章

我们尝试在 github 里面搜索 以 Android 关键字,开发语言为 java 的开源项目。

论一款炫酷 Android 开源项目的修炼之路(上)

统计情况如下:

  1. Retrofit 0
  2. okhttp 0
  3. Butter Knife 0
  4. MPAndroidChart 4

    论一款炫酷 Android 开源项目的修炼之路(上)
  5. Android-Universal-Image-Loader 2

    论一款炫酷 Android 开源项目的修炼之路(上)
  6. glide 1
    论一款炫酷 Android 开源项目的修炼之路(上)
  7. leakcanary 0
  8. EventBus 1
    论一款炫酷 Android 开源项目的修炼之路(上)
  9. picasso 0
  10. zxing 3

    论一款炫酷 Android 开源项目的修炼之路(上)
  11. iosched 0

  12. Fresco 1

    论一款炫酷 Android 开源项目的修炼之路(上)
  13. lottie-android 0

  14. RxAndroid 3
    论一款炫酷 Android 开源项目的修炼之路(上)
  15. libgdx 1
    论一款炫酷 Android 开源项目的修炼之路(上)
  16. SlidingMenu 0
  17. PhotoView 1
    论一款炫酷 Android 开源项目的修炼之路(上)
  18. android-async-http 1
    论一款炫酷 Android 开源项目的修炼之路(上)
  19. material-dialogs 5
    论一款炫酷 Android 开源项目的修炼之路(上)
  20. AndroidUtilCode 0
  21. androidannotations 3
    论一款炫酷 Android 开源项目的修炼之路(上)
  22. Material-Animations 1
    论一款炫酷 Android 开源项目的修炼之路(上)
  23. fastjson 5
    论一款炫酷 Android 开源项目的修炼之路(上)
  24. ViewPagerIndicator 0
  25. plaid 0
  26. PocketHub 1
    论一款炫酷 Android 开源项目的修炼之路(上)
  27. tinker 4
    论一款炫酷 Android 开源项目的修炼之路(上)
  28. Android-CleanArchitecture 2
    论一款炫酷 Android 开源项目的修炼之路(上)
论一款炫酷 Android 开源项目的修炼之路(上)
论一款炫酷 Android 开源项目的修炼之路(上)

我们是筛选容器就是 30个,统计日期:2017年04月27日(随着时间推移,可能略微有变动)。使用标签的有 18个,未使用的有12个。 使用概率大约是:60%。如果筛选容器的范围再大一点可能更多,没有使用徽章的12个项目,可能由于历史原因,或者个人原因未使用,但是不管怎么说,使用徽章的人会越来越多。

为什么要使用徽章?

徽章 shields

徽章的使用不仅仅是为了装 B,而是为了让开源想更高效。进入项目主页一眼能看出需要的东西,例如该项目能否编译通过,当前最新的版本是什么等。

徽章能突出视野,github 默认给我们展示的是黑白世界,但是通过 徽章,将会得到改变。重要的信息可以一目了然。

最常用徽章有哪些?

一份不太靠谱的标准,不过你应该掌握:

论一款炫酷 Android 开源项目的修炼之路(上)

(PS: 上图中的图标顺序对应下面的顺序)

  1. jitpack 徽章: JitPack 是一个仓库,类似 maven,binary, 主要是帮我们生产 android 项目的 aar or jar 的平台。基于 GitHub,可以很方便将 library 发布到远程,然后可以用 gradle 依赖到任何一个项目中。
  2. travis-ci 徽章: Travis-CI 是一个线托管的CI服务,不需要自己搭服务器,在网页上点几下就好,用起来更方便。最重要的是,它对开源项目是免费的。
  3. circle-ci 徽章: Cricle-CI 是也一个线托管的CI服务,和上面相同,不过这个相对来说比较好用一些,可以 SSH 到测试容器,方便在出问题的时候上去调试找原因,界面相对好看一些。
  4. codecov 徽章: Codecov 是开源的测试结果展示平台,将测试结果可视化。Github上许多开源项目都使用了Codecov来展示单测结果。
  5. api level 徽章: Api-Leavel 是 android-arsenal 网站提供的 android api 展示的徽章。可以在项目主页中直接使用 badge 的内容。
  6. codacy 徽章:编程代码自动审查服务平台。帮助开发者及时发现代码中的 bug,提升软件运行质量,主要包括代码质量、语法规范、功能可用性方面的检查。
  7. 个人专属 徽章: shiedls 根据自己的需求可以定制很多样式的徽章,全凭个人 爱好,怎么开心怎么玩。

环境说明

这里我用一个简单的 android 项目来做一个说明,其他语言也是可以的,这里仅仅展示一个实例。

我的本机的android环境说明如下:

  • Mac
  • Android Studio 2.4 preview 4
  • gradle: 3.4.1
  • java: 1.8.0_73
  • buildToolsVersion: 25.0.2
  • compileSdkVersion: 25
  • minSdkVersion: 14
  • support: appcompat-v7:25.1.0
  • constraint: constraint-layout:1.0.0-beta4
  • classpath: com.android.tools.build:gradle:2.4.0-alpha4

用其他版本或者环境也是可以的, 这里只是说明。 如果任何遇到问题,可以在我的 博客 里面留言。

JitPack 的使用

官网: https://jitpack.io

创建 Android Library

1.在 AS 中创建标准的 android 项目:

论一款炫酷 Android 开源项目的修炼之路(上)

2.创建 Library:

论一款炫酷 Android 开源项目的修炼之路(上) 论一款炫酷 Android 开源项目的修炼之路(上) 论一款炫酷 Android 开源项目的修炼之路(上)

配置相关文件

进入 jitpack android 可以看到 jitpack 为我们提供的文档帮助。

论一款炫酷 Android 开源项目的修炼之路(上)
论一款炫酷 Android 开源项目的修炼之路(上)
论一款炫酷 Android 开源项目的修炼之路(上)

对应官网中说的 『group=’com.github.YourUsername’』, 其实可以不写,写不写都会自动生成。 即使你写成了别的,最终还是以这样的格式输出。

AndroidBadge 中 的 build.gradle :

classpath 'com.github.dcendents:android-maven-gradle-plugin:1.5' // Add this line

AndroidBadge 里面的 badge (library) :

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

发布到 Github (这里直接展示 AS 中的界面图形操作,会命令行的同学随意)

  1. 登录自己的 github 账号,然后创建一个 项目,在首页右边能看到:

    论一款炫酷 Android 开源项目的修炼之路(上)
  2. 点击 大绿色 按钮,并填写信息:

    论一款炫酷 Android 开源项目的修炼之路(上)

    那个协议,你们随意,这里只是演示。

  3. 创建成功后:

    论一款炫酷 Android 开源项目的修炼之路(上)

    拷贝当前项目地址。

  4. 在 AS 的项目中创建 git 仓库:

    论一款炫酷 Android 开源项目的修炼之路(上)
    点击后,直接 选择 ok。将项目添加到 git 管理 论一款炫酷 Android 开源项目的修炼之路(上) 。 项目中的文件都变成绿色后: 论一款炫酷 Android 开源项目的修炼之路(上)

    ,耐心等待完成后, 本地项目已经被 git 管理起来了,然后把代码提交到 github 即可。可能会有冲突,自行解决即可。

  5. 现在我们给 library 的 badge 项目添加一个 工具 类:

    论一款炫酷 Android 开源项目的修炼之路(上)

    并提交到 github。

Github 打 release or tag

论一款炫酷 Android 开源项目的修炼之路(上) 论一款炫酷 Android 开源项目的修炼之路(上)

创建第一个 release 分支:

论一款炫酷 Android 开源项目的修炼之路(上)

发布成功以后就能看到:

论一款炫酷 Android 开源项目的修炼之路(上)

一般用 release 就可以了, 在适当的时候 用 tag。

在 JitPack 上生成 aar

  1. 进入 https://jitpack.io/
  2. 将 github 的项目地址: https://github.com/gdky005/AndroidBadge , 直接拷贝 到 jitpack 网页中的文本框中。
    论一款炫酷 Android 开源项目的修炼之路(上)
  3. 点击 Look Up 后:

    论一款炫酷 Android 开源项目的修炼之路(上)
    等里面的那个圈圈 转完 以后,出现 绿色的这个:
    论一款炫酷 Android 开源项目的修炼之路(上)
    说明已经发布 aar 成功,那么我们 可以直接使用了。 如果点开这个东西,会看到编译的和发布的过程。
    论一款炫酷 Android 开源项目的修炼之路(上)
  4. 如果是红色的,说明有错误,点开查看,修改后重新构建。

在 app Demo 中测试是否生效

点击 get 后,能看到:

论一款炫酷 Android 开源项目的修炼之路(上)
  1. 给项目根目录下的 build.gradle 添加:
论一款炫酷 Android 开源项目的修炼之路(上)
论一款炫酷 Android 开源项目的修炼之路(上)

AndroidBadge 中 的 build.gradle :

maven { url 'https://jitpack.io' }

AndroidBadge 里面的 app 的 build.gradle :

compile 'com.github.gdky005:AndroidBadge:v1.0.0'

好的,现在我们已经添加成功了,在 MainActivity 里面是是吧,看能否调到之前在 library 里面的写的 Utils.getVersion()。很高兴的是我们调出来了:

论一款炫酷 Android 开源项目的修炼之路(上)

在项目的最底下也能看到:

论一款炫酷 Android 开源项目的修炼之路(上)

运行 app 项目:

论一款炫酷 Android 开源项目的修炼之路(上)

问题来了,我们修改library 后也能调用到吗?

让咱们一起试试吧:

  1. 修改 badge 项目中的 1.0.0 为 1.0.1 :
    论一款炫酷 Android 开源项目的修炼之路(上)
  2. 提交代码后,push 到 github。 提交成功以后,我们重复上面的打 release 步骤
    论一款炫酷 Android 开源项目的修炼之路(上) , 论一款炫酷 Android 开源项目的修炼之路(上) , 论一款炫酷 Android 开源项目的修炼之路(上)
  3. 然后再去 jitpack 上看看:
    论一款炫酷 Android 开源项目的修炼之路(上)

    多了一个 v1.0.1, 点击 get 吧。

    论一款炫酷 Android 开源项目的修炼之路(上) 论一款炫酷 Android 开源项目的修炼之路(上) 论一款炫酷 Android 开源项目的修炼之路(上)
  4. 发布成功后,我们去 app 里面试试。
    论一款炫酷 Android 开源项目的修炼之路(上)
  5. 同步后,直接运行 app。非常好,我们的修改的东西已经变了:
    论一款炫酷 Android 开源项目的修炼之路(上)

至此, jitpack 基本也差不多了,但是貌似缺少了最重要的一点吧。

jitpack 的徽章怎么弄

还是在刚刚的 jitpack 界面,只是我们把 页面拉倒底部。

论一款炫酷 Android 开源项目的修炼之路(上)

点击后:

论一款炫酷 Android 开源项目的修炼之路(上) 是不是看到了熟悉的 md 文档的格式呢? 看不懂也没关系,下面会专门讲解。
  1. 拷贝内容:
    论一款炫酷 Android 开源项目的修炼之路(上)
  2. 打开 github 的 AndroidBridge 项目:
    论一款炫酷 Android 开源项目的修炼之路(上) ,点击该文件。
  3. 让我们在线编辑下:
    论一款炫酷 Android 开源项目的修炼之路(上)
  4. 给 github 中的 这个 readme.md 文件添加点东西吧。
    论一款炫酷 Android 开源项目的修炼之路(上)
  5. 让我们 保存下。
    论一款炫酷 Android 开源项目的修炼之路(上)
  6. 然后回到项目 首页 看看:
    论一款炫酷 Android 开源项目的修炼之路(上)

棒棒的,添加成功。

论一款炫酷 Android 开源项目的修炼之路(上)

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

数字时代的营销战略

数字时代的营销战略

曹虎、王赛、乔林、【美】艾拉·考夫曼 / 机械工业出版社 / 2017-1 / 99.00元

菲利普•科特勒说,市场比市场营销变得更快(Market changes faster than Marketing),在这个变革的时代,从硅谷、波士顿到北京、上海、深圳,我们正在重新定义公司,重新定义组织,重新定义战略;同样地,营销亦需要重新定义。 从本质上讲,营销战略只有两个时代:实体时代与比特时代,也可称为工业时代与数字时代。从5年前开始,第二个时代正在向未来20年展开画卷,数字创新型企......一起来看看 《数字时代的营销战略》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换