60 lines
1.9 KiB
Bash
60 lines
1.9 KiB
Bash
#!/usr/bin/bash
|
|
# Copyright (c) Facebook, Inc. and its affiliates.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
set -e
|
|
|
|
function download() {
|
|
if hash curl 2>/dev/null; then
|
|
curl -s -L -o "$2" "$1"
|
|
elif hash wget 2>/dev/null; then
|
|
wget -O "$2" "$1"
|
|
else
|
|
echo >&2 "No supported download tool installed. Please get either wget or curl."
|
|
exit
|
|
fi
|
|
}
|
|
|
|
function installsdk() {
|
|
# We need an existing SDK with `sdkmanager`, otherwise, install it.
|
|
command which sdkmanager &> /dev/null || getAndroidSDK
|
|
|
|
PROXY_ARGS=""
|
|
if [[ -n "$HTTPS_PROXY" ]]; then
|
|
PROXY_HOST="$(echo "$HTTPS_PROXY" | cut -d : -f 1,1)"
|
|
PROXY_PORT="$(echo "$HTTPS_PROXY" | cut -d : -f 2,2)"
|
|
PROXY_ARGS="--proxy=http --proxy_host=$PROXY_HOST --proxy_port=$PROXY_PORT"
|
|
fi
|
|
|
|
echo y | "$ANDROID_HOME/tools/bin/sdkmanager" $PROXY_ARGS "$@" > /dev/null
|
|
}
|
|
|
|
function getAndroidSDK {
|
|
TMP=/tmp/sdk$$.zip
|
|
download 'https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip' $TMP
|
|
mkdir -p "$ANDROID_HOME"
|
|
unzip -qod "$ANDROID_HOME" $TMP
|
|
rm $TMP
|
|
}
|
|
|
|
function installAndroidSDK {
|
|
export ANDROID_HOME="$HOME/android_sdk"
|
|
getAndroidSDK
|
|
export PATH="$ANDROID_HOME/platform-tools:$ANDROID_HOME/tools:$ANDROID_HOME/tools/bin:$PATH"
|
|
|
|
mkdir -p "$ANDROID_HOME/licenses/"
|
|
echo 24333f8a63b6825ea9c5514f83c2829b004d1fee > "$ANDROID_HOME/licenses/android-sdk-license"
|
|
echo 8933bad161af4178b1185d1a37fbf41ea5269c55 >> "$ANDROID_HOME/licenses/android-sdk-license"
|
|
}
|