TL; DR
Ma c OS X по умолчанию уже устанавливает AS в папку /Applications
.
Linux пользователи должны установить IDE на /opt/android-studio
и создайте символическую ссылку от bin/studio.sh
до /usr/local/bin/studio
(см. раздел сведений о том, как создать значок запуска приложения).
В процессе установки среды IDE измените местоположение SDK на /opt/google/android
, предоставив всем пользователям доступ к нему. Не забудьте добавить разрешения на запись для пользователей-администраторов , в противном случае для любых обновлений AS и SDK потребуется разрешение sudo
.
По завершении быстрый подход добавляет это к /etc/profile
:
#!/usr/bin/env bash
# WARNING
# Directly modify /etc/profile is not recommended.
# Please read the cleaner approach at the following details section.
export ANDROID_HOME=/opt/google/android
export ANDROID_NDK_HOME=${ANDROID_HOME}/ndk-bundle
# PATH exports were split ONLY due THIS post readability
export PATH=${ANDROID_HOME}/emulator:${PATH}
export PATH=${ANDROID_HOME}/tools:${PATH}
export PATH=${ANDROID_HOME}/platform-tools:${PATH}
, затем выйдите из системы и войдите из ОС, чтобы изменения вступили в силу.
Подробно
Даже если возможно достичь результата с помощью менеджеров пакетов ( apt
, brew
, pacman
, sdkmanager
, yum
, snap
, et c), они используют сторонние репозитории пакетов, которые обычно не являются частью официальных дистрибутивов дистрибутивов.
Таким образом, это решение - скорее вопрос личного вкуса, чем абсолютной истины.
Один из них прочитал этот пост как старый способ настройки инструментов sysadmin , позволяющий вам настроить другие вещи, такие как Node.js, Google Cloud SDK , Heroku , et c.
При этом, предположим, ваше имя пользователя в Linux / OS X - stark
и зарегистрировано более одного пользователя на вашей рабочей станции (например, potts
и widow
), но только вы и widow
являетесь администраторами.
1. Linux & Unix
Мы будем sh, чтобы создать папку SDK, в которой несколько пользователей смогут получать доступ к инструментам IDE и CLI без совместного использования содержимого моей личной папки (например, /home/stark
или /Users/widow
)
Решение состоит в том, чтобы установить SDK в /opt
, , поскольку они не входят в состав дистрибутива, а двоичные файлы загружаются из стороннего (т.е. не скомпилированы нами через * 1064). *).
Так как только root
имеет право изменять /opt
, но не рекомендуется использовать sudo
каждый раз, когда вам нужно обновить SDK, подход старой школы будет создайте папку, в которой только определенная c группа имеет права на запись:
sudo mkdir /opt/google/android
sudo chmod g+w /opt/google/android
# At Mac OS, use admin contrary to adm
usermod -a -G adm stark
usermod -a -G adm widow
Я использовал /opt/google/android
, поскольку такой же подход может быть использован для других инструментов Google SDK (Firebase или GCP * Например, 1075 *), сохраняя все инструменты Google CLI в одном месте.
/opt/
├── anaconda
├── gradle
├── jetbrains
│ ├── pycharm
│ ├── studio
│ └── webstorm
├── node
├── google
│ ├── android
│ ├── chrome
│ └── cloud
└── sonarqube
Чтобы экспортировать команды CLI всем пользователям, наилучшим подходом является настройка переменной PATH
на самое высокое profile
уровень. Для того чтобы дом был чистым и организованным, вместо того, чтобы добавлять его непосредственно к /etc/profile
, давайте создадим /etc/profile.d/android.sh
следующим образом:
#!/usr/bin/env bash
export ANDROID_HOME=/opt/google/android
export ANDROID_NDK_HOME=${ANDROID_HOME}/ndk-bundle
# Emulator must come before tools directory
# See https://stackoverflow.com/questions/26483370
export PATH=${ANDROID_HOME}/emulator:${PATH}
export PATH=${ANDROID_HOME}/tools:${PATH}
export PATH=${ANDROID_HOME}/platform-tools:${PATH}
По умолчанию Ubuntu уже выполняет итерации по /etc/profile.d
, экспортируя вся оболочка, определенная в файлах *.sh
, следовательно, мы можем сохранять семантически организованные конфигурации:
/etc/profile.d/
├── anaconda.sh
├── android.sh
├── gcloud.sh
├── gradle.sh
├── node.sh
└── sonarqube.sh
Ma c OS X не экспортирует файлы по умолчанию в /etc/profile.d
, требуя этот код в /etc/profile
:
if [ -d /etc/profile.d ]; then
for i in /etc/profile.d/*.sh; do
if [ -r $i ]; then
. $i
fi
done
unset i
fi
В отличие от ~/.bash_profile
и ~/.bashrc
, которые загружаются при каждом открытии нового терминала, /etc/profile
и ~/.profile
загружаются после входа в систему . Таким образом, необходимо повторно войти в свой оконный менеджер (или OS X) перед продолжением процесса установки IDE.
Сохранение SDK, установленного в /opt
, полезно, потому что:
- Позволяет вам удалить вашу IDE, не теряя кучу уже загруженных файлов платформы
- Если вы сохраняете разделенные разделы (как для
/home
), вы можете сделать то же самое для /opt
и /usr/local
. - Системные администраторы могут легко копировать средства разработки на несколько машин, используя
rsync
, не беспокоясь о пользовательских ссылках на PATH
для каждого /home
пользователя.
2. Установка Android Studio
В какой-то момент во время процесса установки IDE будет запрошено местоположение (существующего) SDK. Измените его на /opt/google/android
вместо значения по умолчанию в вашем домашнем каталоге.
2.1. Linux
Следуя той же идее, загрузите и установите Android Studio в /opt
:
mkdir /opt/jetbrains/
# At Mac OS, use admin contrary to adm
usermod -a -G adm stark
usermod -a -G adm widow
# Unpack and move
sudo tar -xvzf ~/Downloads/android-studio-ide-linux.tar.gz -C /opt/jetbrains/
sudo mv /opt/jetbrains/android-studio /opt/jetbrains/studio
sudo chgrp adm /opt/jetbrains/studio
# Allow calling Android Studio from command line
sudo ln -s /opt/jetbrains/studio/bin/studio.sh /usr/local/bin/studio
Для вызова AS из программ запуска, таких как Gnome Shell, Unity HUD, et c., Создайте панель запуска приложений в /usr/share/applications/jetbrains-studio.desktop
следующим образом:
[Desktop Entry]
Version=1.0
Type=Application
Name=Android Studio
Icon=/opt/jetbrains/studio/bin/studio.png
Exec="/opt/jetbrains/studio/bin/studio.sh" %f
Comment=The Drive to Develop
Categories=Development;IDE;
Terminal=false
StartupWMClass=jetbrains-studio
Для пользователей, которые хранят одновременно несколько версий AS, вы можете хранить отдельные папки, такие как:
# Stable release
/opt/jetbrains/studio/stable
# Unstable release
/opt/jetbrains/studio/canary
2.2 Ма c OS X
Пользователи Apple должны установить IDE, просто распаковав файл *.dmg
в папку Applications
.