如何使用Jenkins构建Android应用

本文指导读者如何安装AndroidSDK,配置环境变量,使用Git和Gradle,并在Jenkins上设置构建工作流程,包括自动化签名和归档APK文件的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站

安装所需软件


首先,需要安装 Android SDK。要找到下载位置,请访问 Android SDK 下载页面。然后点击“Download for other platforms”并复制 Linux 版本(SDK Tools only)的链接。

!Download for Other Platforms -> SDK Tools only -> Linux

在复制链接后,切换到 SSH 会话。CD 进入 /opt 并下载 Android SDK:

cd /opt
wget <link you copied here>

在撰写本文时,应执行以下命令:

wget http://dl.google.com/android/android-sdk_r22.3-linux.tgz

然后解压文件:

tar zxvf <filename of the just downloaded file>

现在可以删除刚刚下载的文件:

rm <filename of the just downloaded file>

接下来需要设置一些环境变量。编辑 /etc/profile.d/android.sh (nano /etc/profile.d/android.sh) 并添加以下内容:

export ANDROID_HOME="/opt/android-sdk-linux"
export PATH="$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$PATH"

然后重新加载文件:

source /etc/profile

如果要使用 Git,还需安装 Git:

sudo apt-get install git-core

配置 Android SDK


要构建项目,Android SDK 需要安装一些软件包。首先,更新 SDK 本身(需要接受一些许可证):

android update sdk --no-ui

这将安装所有 Android 版本,所以需要一些时间。如果不希望安装所有软件包,请阅读更多信息。

如果只想安装特定部分,有关更新 SDK 的更多信息可在 StackOverflow 的这个问题中找到。

您可能需要安装的软件包可以通过以下命令安装(将 android-19 中的 “19” 替换为最新的 Android SDK 版本):

android update sdk -u --filter platform-tools,android-19

但这不会安装 Gradle 需要的构建工具。为此,请执行以下命令:

android list sdk --all

在此列表中,找到名为 Android SDK Build-tools, version xx.xx.xx 的第一项。记住该项之前列出的数字,然后执行以下命令:

android update sdk -u --all --filter <number>

对于 Android Support Repository 和 Android Support Library 也要执行此操作。

如果知道项目将使用特定版本的构建工具,请在列表中查找该项。它可以在 build.gradle 文件中看到,如下所示:

android {
    buildToolsVersion "18.1.1"
    compileSdkVersion 18
}

还需安装在 build.gradle 中作为 compileSdkVersion 可见的适当平台版本。

现在,为了让 Jenkins 能够访问 Android SDK,请执行以下操作:

sudo chmod -R 755 /opt/android-sdk-linux

此外,如果您使用的是 64 位操作系统,请安装 32 位库:

sudo apt-get install ia32-libs

然后重新启动您的 Droplet:

sudo shutdown -r now

配置 Android 项目


如果您的项目仍然由 Eclipse 构建,将需要创建一个构建脚本。最简单的方法是直接从 Eclipse 进行此操作,方法是转到 File -> Export,然后选择 Android -> Generate Gradle build files。然后选择项目并点击完成。这应该创建一个可以由 Jenkins 构建的 Gradle 项目。

如果不想使用 Gradle,仍然可以使用 Apache Ant。如果不知道这是什么,或者 Gradle 项目导出失败,可以跳过此步骤。唯一需要的步骤是在安装了 Android SDK 的 PC 上执行以下命令:

android update project -p .

配置 Jenkins


还需要配置 Jenkins。首先,需要安装 JDK。要执行此操作,请访问 Manage Jenkins -> Configure System。然后找到 JDK 并点击 Add JDK。您需要有一个 Oracle 账户。要输入您的凭据,请点击 JDK 部分的“Please enter your username/password”。如果没有,请按照下一个屏幕中的链接。输入这些信息后,返回到 JDK 配置。输入一个名称 - 我建议以 Java 版本命名。然后勾选 Install automatically 并选择最新的 Java SE Development Kit 版本。这应该会稍后安装 JDK。

如果使用 Ant,请在 Ant 部分执行相同的步骤。

现在访问 Manage Jenkins -> Manage Plugins -> Available。勾选以下插件并点击 Install without restart:

  • Gradle Plugin(如果使用 Ant,则不需要)

  • Git Plugin(如果使用 Git)

  • Android Emulator Plugin(如果要使用模拟器)

这将自动安装其他一些插件。如果要使用 Gradle,请执行与安装 JDK 相同的步骤以自动安装 Gradle。在撰写本文时,您将需要 Gradle 0.9。如果使用 Gradle 包装器,即您的项目中有一个已检入到源代码控制的 gradlew 文件,则不需要此步骤。

设置工作


现在,可以设置工作了。点击新建作业,给它起一个名字,并选择构建自由风格的软件项目。然后点击确定。在“源码管理”部分,选择你的项目所使用的版本控制系统,并提供相关信息。然后在“构建”部分,如果使用 Gradle,则添加“调用 Gradle 脚本”,如果使用 Ant,则添加“调用 Ant”。填写所有参数。对于 Gradle,最可能的参数是:

!Gradle

对于 Ant,这些是:

!Ant

这将构建项目,但是 APK 文件还没有被保存。要配置这一点,添加后构建操作称为“归档构建产物”。对于要归档的文件类型,输入 **/*.apk

点击保存,构建就可以开始了!点击立即构建。JDK 将被安装,一段时间后构建就会完成!在项目页面上,有一个名为“最后成功的构建产物”的标题。在这里,将显示生成的所有 APK 文件:

!Artifacts

还有什么?


第一个 Android 项目已经在您的 Jenkins 实例上构建完成。恭喜!

Jenkins 实例可以容纳多个作业,因此可以创建更多并开发更多的 Android 应用程序!

Gradle 也可以自动签名应用程序,但这些敏感信息应该存储在 build.gradle 文件中,这是不推荐的。以下是一个完整的 build.gradle 示例,可与 Jenkins 结合使用:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.7.+'
    }
}
apply plugin: 'android'

repositories {
    mavenCentral()
    flatDir {
        dirs 'libs'
    }
}

android {
    compileSdkVersion 19
    buildToolsVersion '19.0.1'

    signingConfigs {
        release {
            storeFile file("keystores/release.keystore")
            storePassword "your-keystore-password"
            keyAlias "your-alias"
            keyPassword "your-alias-password"
        }
    }

    buildTypes {
        release {
            zipAlign true
            signingConfig signingConfigs.release
        }
        debug {
            zipAlign true
        }
    }
}

dependencies {
    compile 'com.android.support:appcompat-v7:19.0.0'
    compile 'com.android.support:support-v4:19.0.0'
}
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

「已注销」

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值