1#!/usr/bin/env bash 2 3API_LEVEL=$1 4emulator_name="bare-expo" 5ANDROID_SDK_ROOT=${ANDROID_SDK_ROOT:-$ANDROID_HOME} 6 7if $ANDROID_SDK_ROOT/tools/android list avd | grep -q $emulator_name; then 8 echo " ☛ Found an existing an emulator named ${emulator_name}" 9 exit 0; 10fi 11 12if [ $API_LEVEL -eq 21 ] 13then 14 PACKAGE="system-images;android-21;default;x86_64" 15elif [ $API_LEVEL -eq 22 ] 16then 17 PACKAGE="system-images;android-22;default;x86_64" 18elif [ $API_LEVEL -eq 23 ] 19then 20 PACKAGE="system-images;android-23;default;x86_64" 21elif [ $API_LEVEL -eq 24 ] 22then 23 PACKAGE="system-images;android-24;default;x86_64" 24fi 25 26echo " ☛ Downloading the Android image to create an emulator..." 27echo no | $ANDROID_SDK_ROOT/tools/bin/sdkmanager $PACKAGE 28 29echo " ☛ Creating the emulator..." 30echo no | $ANDROID_SDK_ROOT/tools/bin/avdmanager \ 31 --verbose \ 32 create avd \ 33 --force \ 34 --name ${emulator_name} \ 35 --abi default/x86_64 \ 36 --package $PACKAGE \ 37 --sdcard 300M 38 39echo " ☛ Configuring the emulator..." 40 41cat >> $HOME/.android/avd/${emulator_name}.avd/config.ini << EOF 42hw.ramSize=2048 43hw.gpu.enabled=yes 44hw.gpu.mode=host 45hw.keyboard=yes 46hw.camera.front=emulated 47hw.camera.back=virtualscene 48hw.cpu.arch=x86_64 49hw.sdCard=yes 50hw.lcd.density=240 51hw.lcd.width=480 52hw.lcd.height=800 53showDeviceFrame=yes 54skin.path=_no_skin 55PlayStore.enabled=false 56abi.type=x86_64 57avd.ini.encoding=UTF-8 58image.sysdir.1=system-images/android-22/default/x86_64/ 59tag.id=default 60tag.display= 61EOF 62 63echo " ☛ Emulator created" 64 65