Об Android Studio



Реп: (67)
Об Android Studio

Прикрепленное изображение


Описание
Android Studio - IDE для разработки приложений для Андроид от Google на основе IntelliJ IDEA.
Полезное
Установка
Страница загрузок на официальном сайте.
Windows
Необходимо установить JDK и прописать системную переменную JAVA_HOME
Перед первым запуском пропишите в переменную JAVA_HOME значение пути к текущей версии JDK (если не установлено, то установить JDK) - например C:\Program Files\Java\jdk1.7.0_21
P.S. Android Studio успешно запустилось на системе без переменной JAVA_HOME, где в PATH был прописан путь к JDK.
Прикрепленное изображение
Прикрепленное изображение

Чтобы использовать Android Studio с эмулятором на Windows XP SP3 необходимо скачать и установить старую версию Intel Hardware Accelerated Execution Manager (extra_intel_haxm-windows_r02.zip)
Прикрепленный файлextra_intel_haxm-windows_r02.zip ( 1.66 МБ )

Установка Android studio на Ubuntu
OS X
Установка Andoid Studio на OS X намного проще - необходимо проинсталировать JDK, а затем Android Studio.

Некоторые ошибки/рекомендации
При проблеме с установкой на x64 системе
О Android Studio (Пост #23049076)
У кого есть проблемы с установкой под Win64, скопируйте файлы java.exe и еще 2 файла java[какие-то символы].exe из папки Windows\system32 в папку Windows\SysWOW64
Не запускается эмулятор
Starting emulator for AVD ''
PANIC: Could not open:
Компьютер → Свойства системы → Дополнительные параметры системы → Переменные среды. Создаем новую переменную с именем ANDROID_SDK_HOME и значением – путем, где находится папка AVD. Там же переменную Path, открываем и в поле значений через точку с запятой добавляем путь до папки tools Android SDK
Запускается эмулятор, но появляется ошибка "pixel launcher isn't responding"
При запуске эмулятора лаунчер сообщает: Pixel launcher isn't responding. Ни какой реакции на нажатия.

Произошло на машине с встроенной видеокартой Intel HD Graphics 3000 - в Windows 10 драйвер не поддерживает OpenGL (вероятно связанно с этим).
Решение: в наcтройках AVD установить значение Software-GLES 2.0 для Emulated performance\Graphics
Прикрепленное изображение

Запускается эмулятор, но видно черный экран с тремя горизонтальными полосами, через которые видно часть "экрана устройства".
Решение: Изменить рендер на DirectX.
Прикрепленное изображение

Создание быстрого x86 эмулятора Android (AVD) на примере Android 5.0.1 (API 21)
Запускаем Android SDK Manager. Загружаем Intel x86 Atom System Image (ознакомьтесь также с Using Hardware Acceleration, Как разогнать эмулятор Android )
Прикрепленное изображение

Создаем новую AVD
Прикрепленное изображение

Пользуемся
Прикрепленное изображение


Изменение места хранения AVD. Инструкция.
Проверено на Ubuntu 16.04, Android Studio 3.0, все компоненты обновлены до последней версии (на 19.11.2017)


Методы лечения различных ошибок в Android Studio
  • Если подчеркивает красным код, где используются ресурсы: R
  • После внезапного выключения компьютера, после перезапуска может быть во всех проектах весь код красным
  • Если Android Studio выдает приблизительно такую ошибку: Error:Execution failed for task ':app:dexDebug'
  • В сообщении об ошибке упоминается heap — виртуальная память
  • Android Studio пришет примерно такую ошибку: Plugin is too old, please update to a more recent version, or set ANDROID_DAILY_OVERRIDE environment variable to «83648b99316049d63656d7276cb19cc7e95d70a5»
  • Иногда при подключении сторонних библиотек могут дублироваться некоторые файлы (обычно связанные с лицензированием). В сообщении будет что-то содержащее слова: duplicate files



  • Если при запуске эмулятора сообщение Cannot set up guest memory 'pc.ram': Invalid argument - проверьте в настройках эмулятора объем памяти, например установите 512 Мб.
  • Также быстро работает Android x86 в VirtualBox (Есть маркет в android-x86-4.2-20130228.iso)
  • Используйте в названиях файлов и каталогов только символы латинского алфавита.
  • Путь к файлу не должен превышать 256 символов.
  • Не используйте заглавные буквы - "Error:Execution failed for task ':app:mergeDebugResources'. Unsupported node 'item' in file "\powertool\app\src\main\res\menu\menu.xml" - была из-за заглавной буквы в "Menu" "

Учебники по Android Studio
  1. pavlofff @ 10.09.2013, 16:55 *
    если хотите нормально работать с этой замечательной IDE (которая , по моему скромному мнению , гораздо лучше Eclipse ) , то наберитесь мужества почитать о том , как ей пользоваться (вполне подойдет документация по IntelliJ IDEA).. англоязычная документация доступна на офф.сайте . На русском есть книга ( в том числе и в электронном варианте ) : Давыдов С.В., Ефимов А.А. - IntelliJ IDEA. Наиболее полное руководство (В подлиннике) - 2005 г. - хоть она и несколько устарела в наше время - 99 % вопросов , вроде -" где папки ? " - отпадут однозначно ..

  2. Уроки на русском языке по IntelliJ Idea
  3. Android Studio Tips and Tricks
  4. Неплохое пособие для начинающих, в книге описывается и использутся Android Studio - Android Programming: The Big Nerd Ranch Guide
    by Bill Phillips, Chris Stewart, Brian Hardy and Kristin Marsicano Copyright © 2015 Big Nerd Ranch, LLC.

Прочее
  • Небольшой мануал на предмет подключения в Android Studio существующего репозитория из BitBucket

  • Миграция старых проектов в Android Studio 1.0 - обратите внимание на переименовывание опций:
    Renamed Properties in BuildTypes
    runProguard => minifyEnabled
    zipAlign => zipAlignEnabled
    jniDebugBuild => jniDebuggable
    renderscriptDebug => renderscriptDebuggable

    Renamed Properties in ProductFlavors
    flavorGroups => flavorDimensions
    packageName => applicationId
    testPackageName => testApplicationId
    renderscriptSupportMode => renderscriptSupportModeEnabled
    ProductFlavor.renderscriptNdkMode => renderscriptNdkModeEnabled

    Т.е. например в build.gradle вместо runProguard false необходимо написать minifyEnabled true

    Добавляем систему контроля версий Mercurial
    Разработчики используют систему Mercurial для администрирования исходного кода. У нее два основных назначения:
    • Она хранит все предыдущие версии каждого файла
    • Она может объединить разные версии вашего кода, то есть сотрудники могут независимо работать над кодом и затем объединять свои изменения

    О инсталляции и работе с Mercurial хорошо написано здесь:
    1. Hg Init: Часть 2. Основы Mercurial
    2. Hg Init: Часть 3. Привыкаем работать в команде


    Устанавливаем Mercurial, если необходимо добавляем в %PATH% путь (в моем случае D:\Program Files\TortoiseHg\).
    Запускаем в консоли из каталога проекта команду hg init - создает репозиторий.
    Открываем проект в Android Studio - Studio обнаруживает Mercurial и предлагает добавить (add root).
    Пользуемся - правая кнопка на вкладке открытого файла - Mercurial. Здесь те пункты, описанные в статье Hg Init: Часть 2. Основы Mercurial - Pull, Push, Commit и т.д.)
    Прикрепленное изображение






По вопросам наполнения шапки обращайтесь в QMS к Модераторам раздела или через кнопку «Жалоба» под сообщениями, на которые необходимо добавить ссылки.

Сообщение отредактировал Rumlin - 05.09.24, 14:35
Причина редактирования: Пользователи из России больше не могут скачивать плагины



Реп: (0)
Здравствуйте,
при включении эмулятора Студия выдаёт такие сообщения (прикреплено).
Подскажите начинающему, куда копать? :sveta:


Прикрепленные изображения
Прикрепленное изображение



Реп: (67)
Вышла Android Studio 2023.1 Hedgehog
https://habr.com/ru/co…broadcast/news/777690/
  • Android Vitals теперь отображаются в проекте в Android Studio
  • Новый Power Profiler покажет расход энергии на устройстве. Этот профайлер не будет работать на всех устройствах, заявлена поддержка на Google Pixel 6 и новее с Android 10 и выше.
  • Автоматизация миграции на target SDK 34 (Android 14)
  • Показ и управление подключенным устройством из Android Studio по USB или Wi-Fi
  • App Links Assistant покажет все Deep Link вашего приложения, проверит их настройку и поможет исправить конфигурацию
  • Layout Inspector теперь может запускать время в окне Running Devices что значительно ускоряет его работу
  • Новый режим превью "Галерея" позволяет фокусировать на одном превью, а также позволяет менять показ списком или сеткой
  • При установки breakpoint в Composable функции дебагер будет показывать параметры Composable функции и её состояние
  • Появились стандартные наборы устройства для превью Composable функций.
  • Минимизировали эффект антивирусов на скорость сборки в Windows
  • Можно использовать устройства из Firebase Test Lab из Gradle Managed Devices
  • Минимальная версия версия Android Gradle Plugin теперь 8.1.1
  • Убрали поддержку Eclipse Android Development Tool





Реп: (6)
Я новичок в Android-разработке, решил в свободное время научиться чему-то новому. Мой основной стэк связан с backend разработкой на PHP, в качестве ide я использую PHPStorm. На своей основной работе я занимаюсь проектом среднего размера, и PHPStorm исключительно хорошо справляется с запуском всего проекта на моём ноуте (фронт vue + бэк php, бд, кэши, нжинксы) в Docker, я вообще не испытываю проблем, по сравнению с Android Studio (AS). Я удивлен, когда я запускаю стартовый (который hello world) проект Jetpack, одна только сборка для эмулятора занимает минуты 3-5 на Pixel 7 Pro API 33. Это только половина проблемы — постоянные странные зависания, и единственное решение — убить AS. Я принудительно выделил под AS 6 гигабайт ОЗУ, но это мало помогает. Вместо изучения нового языка я занимаюсь устранением неполадок прикладного инструмента.

Дорогие друзья, не могли бы вы посоветовать, есть ли какие-либо настройки или конфигурации, которые мне следует включить или отключить?

Я думаю, может мне нужно использовать другой ide?

ОС: Linux | Manjaro (GNOME). Ноутбук, ОЗУ: 16 ГБ, Процессор: AMD Ryzen 7 4800H (8 ядер, 16 потоков, кэш 12 МБ, до 4,2 ГГц).

Сообщение отредактировал Taurinz - 17.12.23, 10:12



Реп: (1655)
Taurinz @ 17.12.23, 04:12 *
Я думаю, может мне нужно использовать другой ide?

Вы можете использовать тот IDE, который вам нравится. Хоть vim + gradle для сборки. А можете вообще все собирать ant-ом.
AS это просто среда разработки рекомендованая гуглом.



Реп: (6)
* Azathtot, привет! да я глянул пару роликов, все пишут в этой ide-шке. Я просто не понимаю, с чем это связано и что делать?

Прочитав этот топик, говорят, лучше не эмулировать а напрямую на железку кидать, вы что думаете об этом?



Реп: (1655)
Taurinz @ 17.12.23, 04:23 *
вы что думаете об этом?

Вообще эмуляторы - злоЪ. Отлаживать надо только на реальном железе.
Taurinz @ 17.12.23, 04:23 *
да я глянул пару роликов, все пишут в этой ide-шке.

Ну во всех роликах под виндоуз пишут в Visual Studio. Потому что хомячкам что дали, то они и жрут...
И к стати, "ролики по разработке" это как аудиокурсы по выпиливанию лобзиком. Результат примерно одинаков.



Реп: (6)
* Azathtot,
Azathtot @ 17.12.23, 10:25 *
И к стати, "ролики по разработке" это как аудиокурсы по выпиливанию лобзиком. Результат примерно одинаков


Субъективно конечно. Я например нашёл ролики на en Ютубе, где сразу залетел на jetpack и небольшой апликухе в виде калькулятора, вместо xml. Базы по java или kotlin - 0, просто знаю основу из других языков, а так они все похожи. Так как я не занимаюсь этим профессионально, а больше как хобби, мне и лобзик с наковальней пойдёт.



Реп: (1655)
Taurinz @ 17.12.23, 04:29 *
где сразу залетел на jetpack и небольшой апликухе в виде калькулятора, вместо xml

Ну и на этом уровне вы и останетесь. Котлин 0, Java 0, алгоритмика -10. Зато "быстрое вхождение"...



Реп: (6)
* Azathtot,
Azathtot @ 17.12.23, 10:25 *
Вообще эмуляторы - злоЪ. Отлаживать надо только на реальном железе.
* Azathtot,

А это получается каждый раз нужно перебилживать и заливать на телефон чтобы увидеть маленькое изменение?
Azathtot @ 17.12.23, 10:31 *
Ну и на этом уровне вы и останетесь. Котлин 0, Java 0, алгоритмика -10. Зато "быстрое вхождение"...


А если моя цель остаться на этом уровне?
И как вы сделали вывод о моей "алгоритмике" по сообщениям?)

Как-то очень негативно и устало с вашей стороны, напоминаете мне синьора который с пеной у рта доказывает про алгосы. А его по зп и воркфлоу обгоняет джун + с литкода.



Реп: (1655)
Taurinz @ 17.12.23, 04:36 *
А это получается каждый раз нужно перебилживать и заливать на телефон чтобы увидеть маленькое изменение?

А есть в чем-то проблема? Только первая сборка проекта обычно долгая, дальше инкрементная компиляция.
Taurinz @ 17.12.23, 04:36 *
И как вы сделали вывод о моей "алгоритмике" по сообщениям?)

По заявлению об отсутствии знаний в нормальных ЯП.
Taurinz @ 17.12.23, 04:36 *
А его по зп и воркфлоу обгоняет джун + с литкода.

Это какой-то анекдот?



Реп: (6)
* Azathtot, спасибо за помощь в общем! Я уверен, вы профессионал в своём деле, но, больше общаться с вами не хочу, извините.



Реп: (3)
Нужна помощь в решение проблемы с пуш уведомлением на Android. Раньше пуш корректно отображал информацию из приложения (картинка #1). Я хотел немного изменить дизайн уведомления и теперь оно стало прятать информацию как бы внутрь при том, что её нельзя развернуть (картинка #2). Информация будет видна, только если потянуть уведомление свайпом слева - направо для выбора действия (картинка #3). Не могу понять как так произошло и что на это влияет, менял только дизайн и вернул обратно как было, но проблема не исчезла. При этом в данный момент на экране блокировки уведомление отображается корректно (картинка #1).

Изображение с проблемой прикрепил

Прикрепленное изображение


Я пробовал вернуть все к исходному состоянию в момент когда все работало корректно, так же пробовал менять целевую версию андроид между 33 и 34

Сообщение отредактировал Papa Legba - 19.12.23, 08:46
Причина редактирования: убрал картинку под спойлер



Реп: (48)
Taurinz @ 17.12.23, 12:36 *
А это получается каждый раз нужно перебилживать и заливать на телефон чтобы увидеть маленькое изменение?

Нет, ничего заливать не надо. Работает как и с эмулятором, надо просто включить режим разработчика на устройстве. Выбираете в меню среды разработки ваше физическое устройство, нажимаете запустить - и тестируемая программа стразу отобразится на экране вашего устройства, ничего никуда копировать и ставить не надо.
Эмуляторы отжирают ресурсы, глючат и зависают намертво. Постоянно с ними проблемы, с физическими устройствами все четко.



Реп: (27)
Здравствуйте.
предистория
Нашел я программу на гитхаб с открытым исходным кодом, которая мне очень подходит по функционалу. Скачал репозиторий в виде зип-файла, скомпилировал, всё ОК. Дальше я внес небольшие косметические изменения: передвинул пункты меню, некоторые кнопки, сделал видимой кнопку "Home" - для удобства пользования.

Вопрос: есть возможность при обновлении исходного кода из репозитория гитхаб или зип-файлом сохранить свои изменения? Где об этом почитать?
послесловие
Я предпочел бы отправлять разработчику предложение по изменению, но не думаю, что такие мелочи его заинтересуют, и, если бы большинству не нравилось нынешнее расположение элементов интерфейса, думаю, поправили бы давно уже.



Реп: (67)
* HZman, первый вариант - это merge.
Авторы мелкие изменения обычно не принимают. То что имеет значение - это исправление ошибок производительности и безопасности.
Второй вариант - это собственный форк - самостоятельно и независимо развивающийся вариант программы. Иногда они могут в конце концов обьединиться, взяв лучшее https://habr.com/ru/co…tikum/articles/700708/



Реп: (27)
Rumlin @ 21.04.24, 12:19 *
merge, собственный форк

Насколько я понял, эти варианты работают в Git, и в AStudio нет функционала управления репозиториями?
Кажется, я разобрался. Функция в AStudio называется Version control, пункт Git > метод обновления: Merge

Сообщение отредактировал HZman - 24.04.24, 18:16



Реп: (0)
Есть два вопроса.
Вопрос первый. Собсна, есть апк яндекс браузера, скачал с apkpure, при попытке открыть в студии - unsupported binary file. Чёт гуглёжка не даёт однозначного ответа, какого рожна так происходит. Кто-нибудь сталкивался? Как победили? Я не разработчик, но мне надо научиться открывать manifest, чтобы знать, где лежит и как называется файл app_restrictions, чтобы уже этот файл править и подгружать в мдм...

Вопрос второй. Манифест даже если и удаётся открыть через debug app - то в нужной мне строке вижу это:
android:name="android.content.APP_RESTRICTIONS"
android:resource="@ref/0x7f190015"
Что это за референс? Как найти сам ресурс? Ещё раз - разработчиком не являюсь, но есть вот такая вот задача, в рамках "импортированного замещения" её приходится решать самому в условиях отсутствия и времени, и нужных компетенций...

Сообщение отредактировал gbogomolov001 - 16.05.24, 15:23



Реп: (1655)
* gbogomolov001,
Вам Студия не нужна от слова "совсем". Вам JADX нужен



Реп: (1)
Привет, как то запустил прогу и Гемини работал на ура с включенным впн, а спустя неделю вот это и ни как не фиксится. "Apologies, Gemini in Android Studio is currently not available in your country."
Мб кто знает обходные пути?



Реп: (67)
DimTeamm @ 25.05.24, 11:43 *
Gemini in Android Studio

Личный VPN использовать. А так есть другие альтернативы:
https://www.youtube.com/watch?v=yljxsbE_yDY


Полная версия   Текстовая версия

Помощь   Правила

Сейчас: 02.12.24, 10:32