1#!/bin/sh 2# Copyright 2016 The Rust Project Developers. See the COPYRIGHT 3# file at the top-level directory of this distribution and at 4# http://rust-lang.org/COPYRIGHT. 5# 6# Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or 7# http://www.apache.org/licenses/LICENSE-2.0> or the MIT license 8# <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your 9# option. This file may not be copied, modified, or distributed 10# except according to those terms. 11 12set -ex 13 14# Prep the SDK and emulator 15# 16# Note that the update process requires that we accept a bunch of licenses, and 17# we can't just pipe `yes` into it for some reason, so we take the same strategy 18# located in https://github.com/appunite/docker by just wrapping it in a script 19# which apparently magically accepts the licenses. 20 21mkdir sdk 22curl https://dl.google.com/android/repository/sdk-tools-linux-3859397.zip -O 23unzip -d sdk sdk-tools-linux-3859397.zip 24 25case "$1" in 26 arm | armv7) 27 abi=armeabi-v7a 28 ;; 29 30 aarch64) 31 abi=arm64-v8a 32 ;; 33 34 i686) 35 abi=x86 36 ;; 37 38 x86_64) 39 abi=x86_64 40 ;; 41 42 *) 43 echo "invalid arch: $1" 44 exit 1 45 ;; 46esac; 47 48# --no_https avoids 49# javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: No trusted certificate found 50echo "yes" | \ 51 ./sdk/tools/bin/sdkmanager --no_https \ 52 "emulator" \ 53 "platform-tools" \ 54 "platforms;android-24" \ 55 "system-images;android-24;default;$abi" 56 57echo "no" | 58 ./sdk/tools/bin/avdmanager create avd \ 59 --name $1 \ 60 --package "system-images;android-24;default;$abi" 61