そーす

I'm a programmer in Fukuoka. Please contact me saubre.app[at]gmail.com or Twitter DM.

BitriseCIでAndroidSDKのライセンスエラー

install-missing-android-toolsを使っていると、SDKがアップデートされた時に

* What went wrong:
A problem occurred configuring project ':app'.
> You have not accepted the license agreements of the following SDK components:
  [Android SDK Platform 26].
  Before building your project, you need to accept the license agreements and complete the installation of the missing components using the Android Studio SDK Manager.
  Alternatively, to learn how to transfer the license agreements from one workstation to another, go to http://d.android.com/r/studio-ui/export-licenses.html
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED

というエラーでCIが失敗する事があります。

原因はこれです。

qiita.com

これをBitrise上でやります。

android-sdk-licenseをアップロード

自身のPCのの$ANDROID_HOME/licenses/android-sdk-licenseをアップロードします。

BitriseのWorkflow EditorCode signingタブのGENERATE FILE STORAGEでアップロードします。

Workflowでダウンロードする

install-missing-android-toolのStepの前にFile DownloaderStepを追加します。

そしてDownload source urlに先程アップロードしたandroid-sdk-licenseのダウンロードURLを、

Download destination pathには

$ANDROID_HOME/licenses/android-sdk-license

を指定します。

f:id:saburesan:20171011130303p:plain

これで問題なくCIが通ると思います。