Ubuntu/Android/SDK/AVD
From r00tedvw.com wiki
(Difference between revisions)
Line 76: | Line 76: | ||
=Create AVD= | =Create AVD= | ||
− | <nowiki>~$ | + | <nowiki>~$ /opt/android/cmdline-tools/bin/avdmanager create avd --force -n Tablet -k "system-images;android-31;google_apis_playstore;x86_64" |
Warning: Observed package id 'build-tools;31.0.0' in inconsistent location '/opt/android/build-tools/31.0.0' (Expected '/opt/build-tools/31.0.0') | Warning: Observed package id 'build-tools;31.0.0' in inconsistent location '/opt/android/build-tools/31.0.0' (Expected '/opt/build-tools/31.0.0') | ||
Warning: Observed package id 'emulator' in inconsistent location '/opt/android/emulator' (Expected '/opt/emulator') | Warning: Observed package id 'emulator' in inconsistent location '/opt/android/emulator' (Expected '/opt/emulator') | ||
Line 87: | Line 87: | ||
Do you wish to create a custom hardware profile? [no]</nowiki> | Do you wish to create a custom hardware profile? [no]</nowiki> | ||
Verify you can see it: | Verify you can see it: | ||
− | <nowiki> | + | <nowiki>avdmanager list avd |
Available Android Virtual Devices: | Available Android Virtual Devices: | ||
Name: Tablet | Name: Tablet | ||
Line 94: | Line 94: | ||
Based on: Android 12 Preview (S) Tag/ABI: google_apis_playstore/x86_64 | Based on: Android 12 Preview (S) Tag/ABI: google_apis_playstore/x86_64 | ||
Sdcard: 512 MB</nowiki> | Sdcard: 512 MB</nowiki> | ||
+ | |||
+ | =Launch emulator= | ||
+ | Verify you can see the AVD | ||
+ | <nowiki>~$ emulator -list-avds</nowiki> | ||
+ | Launch | ||
+ | <nowiki>~$ emulator -avd Tablet | ||
+ | emulator: Android emulator version 30.7.5.0 (build_id 7491168) (CL:N/A) | ||
+ | PANIC: Broken AVD system path. Check your ANDROID_SDK_ROOT value [/opt/android]!</nowiki> | ||
+ | Tablet |
Revision as of 03:36, 12 August 2021
Contents |
Overview
Done on Ubuntu 20.04 LTS.
Installed without Android Studio
Download Prerequisites
Get the commandline tools.
https://developer.android.com/studio > Download options > commandlinetools-linux-7583922_latest.zip
~$ wget https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip
Make the directory Android SDK/AVD will live in.
~$ sudo mkdir /opt/android
Unzip
~$ sudo unzip ~/commandlinetools-linux-7583922_latest.zip -d /opt/android
Move sdkmanager
~$ sudo mkdir /opt/android/cmdline-tools/latest ~$ sudo mv /opt/android/cmdline-tools/bin/sdkmanager /opt/android/cmdline-tools/latest
Set Env Vars and Path
I had to do this in a few places. root, user, and sudoers.
root & user
Create a bash_alias for root, modify .profile for user. Same data in both.
~$ sudo touch /root/.bash_aliases ~$ sudo vim /root/.bash_aliases ~$ sudo vim ~/.profile # set PATH so it includes android sdk emulator if it exists if [ -d "/opt/android/emulator" ] ; then PATH="/opt/android/emulator:$PATH" fi # set PATH so it includes android sdk platform tools if it exists if [ -d "/opt/android/platform-tools" ] ; then PATH="/opt/android/platform-tools:$PATH" fi # set PATH so it includes android sdk command line tools if it exists if [ -d "/opt/android/cmdline-tools" ] ; then PATH="/opt/android/cmdline-tools:$PATH" fi # set PATH so it includes android sdk command line tools bin if it exists if [ -d "/opt/android/cmdline-tools/bin" ] ; then PATH="/opt/android/cmdline-tools/bin:$PATH" ANDROID_SDK_ROOT="/opt/android" ANDROID_HOME="/opt/android" fi # set PATH so it includes android sdk command line tools if it exists if [ -d "/opt/android/cmdline-tools/latest" ] ; then PATH="/opt/android/cmdline-tools/latest:$PATH" fi
sudoers
use sudo visudo
then add the following to the Defaults secure_path=
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin:/opt/android/cmdline-tools/bin:/opt/android/cmdline-tools/latest:/opt/android/emulator:/opt/android/platform-tools"
Install Android packages
~$ cd /opt/android/ ~$ sudo sdkmanager --sdk_root="/opt/android" --install "platforms;android-31" ~$ sudo sdkmanager --sdk_root="/opt/android" --install "system-images;android-31;google_apis_playstore;x86_64" ~$ sudo sdkmanager --sdk_root="/opt/android" --install "build-tools;31.0.0" ~$ sudo sdkmanager --sdk_root="/opt/android" --licenses
Verify you can see them.
~$ sudo avdmanager list target Warning: Observed package id 'build-tools;31.0.0' in inconsistent location '/opt/android/build-tools/31.0.0' (Expected '/opt/build-tools/31.0.0') Warning: Observed package id 'emulator' in inconsistent location '/opt/android/emulator' (Expected '/opt/emulator') Warning: Observed package id 'patcher;v4' in inconsistent location '/opt/android/patcher/v4' (Expected '/opt/patcher/v4') Warning: Observed package id 'platform-tools' in inconsistent location '/opt/android/platform-tools' (Expected '/opt/platform-tools') Warning: Observed package id 'platforms;android-31' in inconsistent location '/opt/android/platforms/android-31' (Expected '/opt/platforms/android-31') Warning: Observed package id 'system-images;android-31;google_apis_playstore;x86_64' in inconsistent location '/opt/android/system-images/android-31/google_apis_playstore/x86_64' (Expected '/opt/system-images/android-31/google_apis_playstore/x86_64') Warning: Observed package id 'tools' in inconsistent location '/opt/android/tools' (Expected '/opt/tools') Available Android targets:==============] 100% Fetch remote repository... ---------- id: 1 or "android-31" Name: Android API 31 Type: Platform API level: 31 Revision: 1
Create AVD
~$ /opt/android/cmdline-tools/bin/avdmanager create avd --force -n Tablet -k "system-images;android-31;google_apis_playstore;x86_64" Warning: Observed package id 'build-tools;31.0.0' in inconsistent location '/opt/android/build-tools/31.0.0' (Expected '/opt/build-tools/31.0.0') Warning: Observed package id 'emulator' in inconsistent location '/opt/android/emulator' (Expected '/opt/emulator') Warning: Observed package id 'patcher;v4' in inconsistent location '/opt/android/patcher/v4' (Expected '/opt/patcher/v4') Warning: Observed package id 'platform-tools' in inconsistent location '/opt/android/platform-tools' (Expected '/opt/platform-tools') Warning: Observed package id 'platforms;android-31' in inconsistent location '/opt/android/platforms/android-31' (Expected '/opt/platforms/android-31') Warning: Observed package id 'system-images;android-31;google_apis_playstore;x86_64' in inconsistent location '/opt/android/system-images/android-31/google_apis_playstore/x86_64' (Expected '/opt/system-images/android-31/google_apis_playstore/x86_64') Warning: Observed package id 'tools' in inconsistent location '/opt/android/tools' (Expected '/opt/tools') Auto-selecting single ABI x86_64========] 100% Fetch remote repository... Do you wish to create a custom hardware profile? [no]
Verify you can see it:
avdmanager list avd Available Android Virtual Devices: Name: Tablet Path: /root/.android/avd/Tablet.avd Target: Google Play (Google Inc.) Based on: Android 12 Preview (S) Tag/ABI: google_apis_playstore/x86_64 Sdcard: 512 MB
Launch emulator
Verify you can see the AVD
~$ emulator -list-avds
Launch
~$ emulator -avd Tablet emulator: Android emulator version 30.7.5.0 (build_id 7491168) (CL:N/A) PANIC: Broken AVD system path. Check your ANDROID_SDK_ROOT value [/opt/android]!
Tablet