-2
我有一个使用MovieDB.org API显示电影的Android应用程序。如何为Travis-CI加密和使用TheMovieDB API_KEY?
我已经做了我的加密API_KEY theMovieDB.org为travic CI如下:
gem install --user travis
travis encrypt API_KEY = my_api_key --add
所以,基本上,它会在.travis.yml一个安全密钥并将其存储。 但它似乎没有工作。我收到以下错误:
Execution failed for task ':app:compileDebugJavaWithJavac'.
> Compilation failed; see the compiler error output for details.
我知道我得到这个错误,因为特拉维斯CI想不出我API_KEY。因为无论何时直接使用我的密钥,Travis CI都会通过构建。 但不幸的是没有用上面的代码加密那个KEY。 我正在做他们在文档中提到的一切。
这是我.tavis.yml:
language: android
env:
global:
secure: some_lengthy_secure_key
android:
components:
- platform-tools
- build-tools-25.0.3
- android-25
- extra-android-m2repository
script:
- ./gradlew build
before_install:
- chmod +x gradlew
branches:
only:
- master
这是我的项目:https://github.com/Parag2385/PopularMovies-P
错误清楚地表明你的*编译*失败。是什么让你认为这与API密钥有关?只有在程序运行之前,该密钥才会被使用。 –
因为当我在没有API_KEY的Android studio上编译我的项目时,它给了我完全相同的错误。并且使用API_key,它可以成功地在仿真器上以及在实际设备上遵循并运行。那么还有什么原因可以在那里? –
而且,当我将我的API_KEY保存在gradle.properties文件中,然后在travis CI上构建时,它不会给我错误,而是成功构建传递。 但出于安全原因,我无法将我的API_KEY保存在GitHub仓库中,对不对? –