Travis CI for Android

时间:2013-01-17 01:21:07

标签: android travis-ci

尝试为我的Android项目开始使用Travis CI。首先,我使用Android Bootstrap设置虚拟项目,并从square's otto项目添加了一个yml文件 - 修改为具有我的用户名和回购名称。

我的构建失败,错误为“/home/travis/build.sh: line 94: android: command not found,即使square's project builds fine

也是如此。”

错误似乎表明路径设置不正确,尽管我的.travis.yml中有这些行

  • export ANDROID_HOME =〜/ builds / f2prateek / FoodBot / android-sdk-linux
  • export PATH = $ {PATH}:$ {ANDROID_HOME} / tools:$ {ANDROID_HOME} / platform-tools

我还需要设置其他东西才能做到这一点吗?

2 个答案:

答案 0 :(得分:16)

更新2014/05 :Travis CI现在正在为Android提供官方支持。

http://docs.travis-ci.com/user/languages/android/

以下的解决方法不再需要,除非你想在a上使用它 非Android VM。


问题很可能是Travis CI切换到64位虚拟机。您需要安装适用于Android的ia32-libs才能在64位环境中运行。目前可以通过以下方式实现:

sudo apt-get install -qq --force-yes libgd2-xpm ia32-libs ia32-libs-multiarch

我撰写了一篇关于在Travis上运行Android版本的博客文章,其中涵盖了此内容以及其他详细信息:http://rkistner.github.com/android/2013/02/05/android-builds-on-travis-ci/

Travis可能会在未来支持特定于Android的虚拟机,这将简化配置。按照issue #56上的对话,了解有关此问题的更新以及针对特定于Android的VM的讨论。

答案 1 :(得分:3)

此回复涵盖了Travis自动测试。有关完整版本,请参阅Medium article:自动测试和部署。

Travis CI(@ API 26 +)

显然,从API 24设置模拟器是痛苦的Travis很痛苦[1] [2] [3] [4]

Sean Barbeau,他们比我更长时间地挖掘了这个时间,有pretty much considered it impossible来模仿。

API 26 + 还有一个更简单的替代方案,即使用gradlew代替adb emulator运行测试。它seems to have some limitations,但它应该工作。致PocketHub

sudo: required

language: android
jdk: oraclejdk8

before_cache:
  - rm -f  $HOME/.gradle/caches/modules-2/modules-2.lock
  - rm -rf $HOME/.gradle/caches/*/plugin-resolution/

cache:
  directories:
  - $HOME/.gradle/caches/
  - $HOME/.gradle/wrapper/
  - $HOME/.android/build-cache

env:
 global:
 - ANDROID_API=26
 - ANDROID_BUILD_TOOLS=26.0.2

android:
  components:
  - tools
  - tools # Running this twice get's the latest build tools (https://github.com/codepath/android_guides/wiki/Setting-up-Travis-CI)
  - platform-tools
  - android-${ANDROID_API}
  - build-tools-${ANDROID_BUILD_TOOLS}
  - extra

script:
- ./gradlew clean test build

您可能需要调整到项目的环境变量:

有些信息应该在build.gradleAndroidStudio -> Settings -> Android SDK -> SDK Tools

中提供

(如果您正在使用更新的AndroidStudio构建新项目,则应选择以下链接中的最新版本)

ANDROID_API https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels

ANDROID_BUILD_TOOLS https://developer.android.com/studio/releases/build-tools.html

Example .travis.yml setup(自动部署到GitHub版本)。