原标题:码云 Android apk 在线构建功能上线啦!

#点击上图,立即参与OSC珠海源创会#

duang duang duang ……

各位看官,开源中国码云 Android 项目构建新功能上线啦!!

码云支持的项目中, ant/maven/gradle的配置文件支持脚本。而每个人写出的构建脚本千变万化,因此码云对支持的项目设置做了一些规范。本次给大家带来的新功能内容如下:

一、码云Android项目构建注意事项

ant项目

build.xml必须位于项目根目录。

maven项目

pom.xml必须位于项目根目录。

gradle项目

由于gradle的配置灵活,我们做了一些规范,并且增加了一下机制来处理签名问题。

二、码云Android项目构建示例

android-app 项目目录结构(以 为例)

gradle 需要的配置和脚本有:

gradlew/gradlew.bat/build.gradle => 构建脚本。

settings.gradle => 子项目。

app/build.gradle => 构建配置(设置签名, debug/release, 依赖等等)。

gradle.properties(优先于 config/gradle.properties, 当 gradle.properties 不存在时,则尝试读取 config/gradle.properties) => 用户设置 jdk/gradle, 可定义变量。

gradle/wrapper/gradle-wrapper.properties => 构建使用的 gradle 的版本(请使用gradle 2.0以上版本)。

关于gradle构建流程:

1.判断是否是标准的 gradle 项目。

2.读取 settings.gradle 文件,找到子项目的路径。

3.读取 gradle.properties 或 config/gradle.properties 文件(确定 keystore。如果 keystore 使用私有项目地址,则使用当前用户身份下载。如果没有设置或者不存在私有项目地址及权限错误,则生成随机签名用来构建)。

4.读取 gradle/wrapper/gradle-wrapper.properties 文件, 确定使用的 gradle 版本,下载并解压。

5.进入子项目目录。如果没有定义,即为项目根目录。

6.读取子项目中 build.gradle 文件,修改其中的 signingConfigs section 和 buildTypes section,以确保使用正确的签名和构建版本。

7.构建成功,上传apk。

关于setting.gradle:

关于config/gradle.properties:

gradle 使用的 gradle.properties 必须位于项目根目录,为了不让开发者本地项目中的 gradle.properties 上传到线上仓库, 可将该文件加入到 .gitignore 中,然后在 config/gradle.properties 配置 android 构建需要的 keystore 信息,配置可参考 上图。

私有的 keystore 存储在私有仓库,从而保证了签名文件的安全。如果用户根目录下存在 gradle.properties 文件,则不 再读取 config/gradle.properites。注明:项目中 config/gradle.properties 使用了绝对路径,用户可设置如下:

RELEASE_STORE_FILE=http://git.oschina.net/your/private-project/blob/ref/path-to-keystore

关于app/build.gradle:

签名设置也可采用如下形式:

//signing files settings signingConfigs { debug { #相对路径且存在;否则使用Git@OSC的keystore(绝对路径构建失败)storeFile file( "your_secret.keystore") storePassword RELEASE_STORE_PASSWORD keyAlias RELEASE_KEY_ALIAS keyPassword RELEASE_KEY_PASSWORD } release { #网路地址存在;否则使用Git@OSC的keystorestoreFile file( "http://zql.org/zouqilin/gradle_keystore/blob/master/git-gradle-key.keystore") storePassword RELEASE_STORE_PASSWORD keyAlias RELEASE_KEY_ALIAS keyPassword RELEASE_KEY_PASSWORD } test{ #混合形式storeFile file( "http://zql.org/zouqilin/gradle_keystore/blob/master/git-gradle-key.keystore") storePassword "oschina123"keyAlias "alias_name"keyPassword "oschina123"} }

三、码云 Android 项目使用步骤

1.设置项目的语言为Android。

2.进入项目首页会出现【生成apk】按钮。

3.点击【生成apk】按钮,进入构建页面(使用当前用户的身份拉取私有仓库中的 keystore )。

注意

如果想使用项目中提供的 keystore(私有仓库地址),请选中该复选框!

1.构建过程。

2.构建完成(提供 apk 下载)。

3.生成随机签名(提供签名信息和 keystore 下载,项目中未提供签名,为方便测试,码云为每个项目生成了随机的签名)。

巴拉巴拉……终于说完了~

小编觉得吧,这些通通都不是重点,赶紧去玩玩 Android 项目构建功能才是重点!赶紧的,点击开始玩吧!

如果有问题,请反馈至 ,非常感谢您的支持!

开源中国|ID:oschina2013

每天为你送上精选资讯早点

还有每天的 OSChina 乱弹哦返回搜狐,查看更多

责任编辑:

android 上线apk,码云 Android apk 在线构建功能上线啦!相关推荐

  1. Android studio和码云步骤,android地图开发框架

    然后就直接next/next就好了 第二步:在AndroidStudio中配置git ========================================================= ...

  2. android asynctask源码分析,Android通过Handler与AsyncTask两种方式动态更新ListView(附源码)...

    本文实例讲述了Android通过Handler与AsyncTask两种方式动态更新ListView的方法.分享给大家供大家参考,具体如下: 有时候我们需要修改已经生成的列表,添加或者修改数据,noti ...

  3. ubuntu-18.04.4 Android系统源码TP1A(Android 13)下载及编译

    继上一篇博客介绍了VMware Workstation15 配置ubuntu-18.04.4,这篇主要介绍安装后环境搭建,Android源码的下载与编译.小编当前下载的是当前最新的代码,是主干分支代码 ...

  4. android view 源码分析,Android ViewPager源码详细分析

    1.问题 由于Android Framework源码很庞大,所以读源码必须带着问题来读!没有问题,创造问题再来读!否则很容易迷失在无数的方法与属性之中,最后无功而返. 那么,关于ViewPager有什 ...

  5. android直播 腾讯云,Android 腾讯云直播 自定义消息收发

    写在前面 最近呢,在做腾讯云直播,也已经实现功能啦,现在就开始总结一下,腾讯云直播的自定义消息收发. 云直播的自定义消息收发,不得不说的点就是 腾讯云IM,做过腾讯云IM的都知道 消息总体分为以下几种 ...

  6. android launcher3源码分析,Android Launcher3源码分析与修改

    Launcher和Setting是客户需求经常改动的地方,不过其代码量也不容小觑.今天就初略来看一下,以下内容都是本人查阅资料加上自己的理解得出,由于自己水平有限,如果误导还请指出: 先从Androi ...

  7. android pda 扫码demo,android 关于PDA条形码的开发demo

    [实例简介] PDA系统为android,该项目主要是实现条形码解读. [实例截图] [核心代码] package com.example.administrator.barcode2ds; impo ...

  8. android 日历源码解析,Android 4.0日历(calendar)源码分析之概览

    Calendar 从4.0开始,谷歌android系统有了脱碳换骨的改变,相应的日历应用的代码架构也跟2.*完全不同.代码更规范,当然也更复杂,且涉及到了android开发的方方面面. 如果你熟悉了i ...

  9. android art源码分析,Android ART机制分析

    本文章由Jack_Jia编写,转载请注明出处.文章链接:外链网址已屏蔽 作者:Jack_Jia邮箱: 2013年度"博客之星"投票火热进行中,欢迎投票支持我: 一.Android系 ...

最新文章

  1. mysql密码修改脚本
  2. c#中页面之间传值传参的六种方法
  3. C++ Boost在Windows和Linux下的编译安装
  4. ssh公钥免密码登录
  5. mysql安装被打断_Mysql的安装/性能优化/安全加固
  6. 三星Galaxy Fold 2渲染图曝光:怎么折是个问题
  7. linux执行命令带时间戳,Linux查看History记录加时间戳的小技巧
  8. paip.检测信用卡账单数据的正确性算法
  9. 数学建模竞赛赛前准备及资源分享
  10. 【笑爆肚子的超级冷笑话】
  11. efcore微软官方文档
  12. void print c语言,数据结构(c语言版)习题集第一章绪论1.16voidprint_descending(intx.doc
  13. 【2019.05】python 爬取拉钩数据(静态+动态)
  14. R语言基于ARCH模型股价波动率建模分析
  15. XML HttpRequest
  16. Access FileDialog 用户定义类型未定义(User-defined type not defined)的解决方法
  17. 如何通过excel批量生成word文件?
  18. js正则表达式验证大于0的整数
  19. 大数据分析AI和机器学习在医疗行业的应用
  20. 树莓派(raspberry pi)日记1之个人网站的构建(localhost内网穿透实现公网可以访问)

热门文章

  1. 06_NoSQL数据库之Redis数据库:Redis的高级应用之登录授权和主从复制
  2. Android MapView简单使用
  3. 检索数据_6_过滤记录结合使用别名
  4. Scikit-learn 数据预处理之鲁棒缩放RobustScaler
  5. SQL Server 2017 2019 Linux(Centos、Unbuntu16.04、Unbuntu18.04、Unbuntu20.04)安装过程详解
  6. oracle ha节点,oracle linux ha配置
  7. php isapi mysql_windows server 2003以isapi的方式配置php+mysql环境的详细过程
  8. Faster R-CNN改进篇(二): RFCN ● RON
  9. 目标检测之YOLOv2
  10. 牛客网数组排序NC140