- Методы лечения различных ошибок в Android Studio при разработке проекта
- Отладчик Android Studio запускает старую версию кода, не обновленную
- 2 ответа
- Android Studio Windows 10 ошибок в 4 быстрых шага
- Не удается запустить Android Studio в Windows 10? Вот что делать
- 1: убедитесь, что у вас установлен SDK
- 2. Запустите приложение от имени администратора и в режиме совместимости.
- 3: отключить UAC и антивирус
- 4: переустановите все связанные приложения
- Android Studio не развертывает изменения в приложении
- 16 ответов
- РЕДАКТИРОВАТЬ2 (2020-03-09)
Методы лечения различных ошибок в Android Studio при разработке проекта
Сегодня хотел бы поделиться своим анализом и способами лечением разных ошибок при разработке своего продукта в Android Studio. Лично я, не раз сталкивался с различными проблемами и ошибками при компиляции и/или тестировании мобильного приложения. Данный процесс, всегда однообразный и в 99% случаев и всегда нужно тратить n-колличество времени на его устранение. Даже, когда ты уже сталкивался с данной проблемой, ты все равно идешь в поисковик и вспоминаешь, как же решить ту или иную ситуацию.
Я для себя завел файлик, в котором отметил самые частые ошибки — потратив на это несколько часов и перечислил самые популярные ошибки (в дальнейшем планирую просто их запомнить), чтоб сократить свое время в дальнейшем.
Итак, начну по порядку с самой распространенной проблемы и дальше буду перечислять их по мере появления:
1) Если подчеркивает красным код, где используются ресурсы: R. — попробовать (но вероятно не поможет): Build -> Clean Project.
В принципе на Build -> Clean Project можно не терять времени, а лучше всего — слева переключиться на Project, открыть каталог .idea, затем каталог libraries и из него удалить все содержимое. Затем нажать кнопку Sync Project. А затем (если все еще красное, но скорее всего уже будет все ок ) Build -> Clean Project.
2) После внезапного выключения компьютера, после перезапуска может быть во всех проектах весь код красным. Перед этим может быть ошибка: Unable to create Debug Bridge: Unable to start adb server: Unable to obtain result of ‘adb version’. Есть три решения — первое помогло, второе нет (но может быть для другого случая), а третье — не пробовал:
а) File — Invalidate Caches/Restart — Invalidate and Restart
б) Закрыть студию. В корне папки проекта удалить файл(ы) .iml и папку .idea. Вновь запустить студию и импортировать проект.
в) Нажать Ctrl-Alt-O и запустить оптимизацию импорта.
Кстати, adb сервер можно проверить на версию (и работоспособность) и затем перезапустить:
3) Если Android Studio выдает приблизительно такую ошибку: Error:Execution failed for task ‘:app:dexDebug’.
Надо слева переключиться на опцию Project, найти и удалить папку build которая лежит в папке app, т.е. по пути app/build. Затем перестроить весь проект заново: Build -> Rebuild Project.
Такое же решение если ошибка типа: «не могу удалить (создать) папку или файл» и указан путь, который в ведет в app/build. Тоже удаляем папку build и ребилдим проект.
4) В сообщении об ошибке упоминается heap — виртуальная память. А ошибка обычно вызвана ее нехваткой, т.е. невозможностью получить запрашиваемый объем. Поэтому этот запрашиваемый объем надо уменьшить, т.е. переписать дефолтное значение (обычно 2048 MB которое можно изменить в настройках), на меньшее 1024 MB.
В файле проекта gradle.properties пишем:
5) Android Studio пришет примерно такую ошибку: Plugin is too old, please update to a more recent version, or set ANDROID_DAILY_OVERRIDE environment variable to «83648b99316049d63656d7276cb19cc7e95d70a5»
Возможные причины (кроме необходимости регулярного обновления SDK):
а) Загруженный проект был скомпилирован с помощью уже несовместимого старого gradle плагина. В этом случае надо найти и подключить в своем build.gradle проекта этот более старый плагин. т.е. попробовать более старые версии, например: 1.1.3 (часто именно 1.1.x и подходит).
Найти все версии можно здесь.
б) Если в build.gradle проекта используется beta-версия плагина — это означает, что срок ее истек. Посмотреть последние релизы (продакшн и бета) можно также здесь:
6) Иногда при подключении сторонних библиотек могут дублироваться некоторые файлы (обычно связанные с лицензированием). В сообщении будет что-то содержащее слова: duplicate files. Решение — надо посмотреть в сообщении об ошибке или в документации подключенной сторонней библиотеки — какие именно файлы стали избыточными, и перечислить их в build.gradle модуля для исключения (exclude) из билда.
Это делается в директиве packagingOptions (которая, в свою очередь, находится в директиве android).
Источник
Отладчик Android Studio запускает старую версию кода, не обновленную
Я новичок в разработке Android, поэтому мне может не хватать чего-то очевидного, что я могу попробовать.
Я пытаюсь отладить код, но отладчик перебирает старую версию кода, а не текущую версию в моем проекте.
Очевидно, он пропустил мое исключение throw и перешел в закомментированный код
- Удаление предыдущего apk, установленного на устройство
- Восстановить / очистить
- Использование Genymotion и реального устройства (Gingerbread)
- adb kill-server
- Перезапустите А. Студия
- Похожие вопросы по SO
На самом деле это демонстрационная версия cwac v9, так что это демонстрационное приложение, использующее библиотеку ‘camera’, и оно находится в проекте библиотеки камеры cwac, который я отлаживаю.
Что мне непонятно, так это где и что создается gradle, поэтому я ничего не «жестко очищал» из проводника Windows. Я даже не могу проверить даты файлов .
Какие советы вы можете дать мне, как проверить, что последний код выходит на устройство?
2 ответа
Поскольку я новичок в Android и столкнулся со сложностью среды IDE / gradle (если бы она была больше похожа на Visual Studio!), Мне было трудно найти проблему, но я нашел ее, и это было характерно для проекта CWAC-Camera (свежий из GitHub).
FWIW, почему это такая сложная система IDE / сборки, кажется, что многое из этого можно было бы усвоить (я имею в виду, убрать gradle из поля зрения) .
Файл-> Структура проекта -> (Выберите модуль слева, который вы запускаете, для меня это camera-v9) -> (Выберите вкладку Зависимости)
Должна быть запись библиотеки Maven для камеры CWAC, помеченная как Scope == «Release compile», а также библиотека Module , scope == «Debug compile».
Я удалил запись библиотеки Maven и изменил запись модуля на scope == «Compile». Тогда это сработало.
Итак, что произошло, так это то, что копия библиотеки Maven использовалась вместо модуля. Зачем? Не уверен, потому что я мог подумать, что запуск «отладчика» на чем-то потребует режима сборки «отладка». Я нашел это, но не могу следовать принятому ответу (потому что я недостаточно хорошо знаю IDE) Почему Gradle строит мой модуль в режиме выпуска, когда приложение находится в отладке
Я не знаю, это просто промах в демонстрационном проекте CWAC или что-то не так в моей настройке. Мне кажется, что использование Maven lib для выпуска может привести к неожиданным результатам (т.е. настройки исчезли).
Сказав все это, CWAC, кажется, спасает жизнь, и я очень за это благодарен!
Попробуй это. Откройте файл build.gradle вашего приложения и внесите изменения (просто добавьте пробел). Затем нажмите кнопку «Синхронизировать сейчас» в правом верхнем углу.
Я не совсем уверен, что происходит с кешированием, но это, похоже, исправило это для меня.
Источник
Android Studio Windows 10 ошибок в 4 быстрых шага
В самой используемой ОС в мире есть и самые активные разработчики. Конечно, мы имеем в виду Android и его приложения. Теперь большинство пользователей будут работать под управлением Android Studio под Linux, но значительное количество разрабатывают приложения для ОС Windows. В последнее время пользователям, которые обновили Windows 7/8 до Windows 10, было трудно работать с Android Studio.
Мы позаботились о том, чтобы заручиться поддержкой нескольких проблем. Если вы не можете запустить Android Studio в Windows 10 , следуйте приведенным ниже инструкциям.
Не удается запустить Android Studio в Windows 10? Вот что делать
- Убедитесь, что вы установили SDK
- Запустите приложение от имени администратора и в режиме совместимости
- Отключить UAC и антивирус
- Переустановите все связанные приложения
1: убедитесь, что у вас установлен SDK
Странное появление приложений, работающих на Windows 7 или Windows 8 и внезапно заканчивающихся сбоем на Windows 10, не является чем-то новым. Однако в этом случае большинство пользователей смогли запустить Android Studio на Windows 10 так же легко, как и на предыдущих итерациях Windows. Просто некоторые пользователи не смогли запустить этот инструмент разработки, даже после нескольких попыток.
- ЧИТАЙТЕ ТАКЖЕ: эмулятор Android Hyper-V теперь доступен в Windows 10 v1803
Несмотря на то, что это редко, мы все равно должны посоветовать вам проверить Java SDK (Software Development Kit) от Oracle. Без этого Android Studio не будет работать. Даже если вы выполнили обновление до Windows 10 за предыдущие итерации, переустановка этого инструмента может помочь. Возможно, некоторые компоненты не были перенесены с системой, и именно это и является причиной проблемы.
2. Запустите приложение от имени администратора и в режиме совместимости.
Другим подходящим подходом, когда стороннее приложение не работает, является предоставление ему административного разрешения. Кроме того, запуск программы в режиме совместимости также может помочь. Многие сторонние приложения не будут работать так, как задумано в Windows 10, из-за более ограниченного характера системы.
- ЧИТАЙТЕ ТАКЖЕ: Windows 10 на ARM подвержена проблемам с производительностью и совместимостью приложений
Однако, как мы уже говорили, вы можете решить эту проблему, настроив параметры совместимости. Выполните следующие действия, чтобы разрешить административное разрешение для Android Studio:
- Щелкните правой кнопкой мыши ярлык Android Studio и откройте Свойства .
- Установите флажок « Запустить эту программу в режиме совместимости для ».
- Выберите « Windows 7 » в раскрывающемся меню.
- Установите флажок « Запустить эту программу от имени администратора ».
- Подтвердите изменения и перезагрузите компьютер.
3: отключить UAC и антивирус
Даже если мы не можем открыто рекомендовать отключить UAC (контроль учетных записей) в Windows (из-за очевидных причин безопасности), вы можете попробовать его временно. Когда дело доходит до более деликатных и сложных приложений, которыми, безусловно, является Android Studio, системные ограничения могут быть слишком большими.
- ЧИТАЙТЕ ТАКЖЕ: Ошибка установки программного обеспечения «Ошибка 5: доступ запрещен» в Windows [FIX]
Вот как отключить UAC в Windows 10:
- На панели поиска Windows введите UAC и откройте « Изменить настройки контроля учетных записей » из списка результатов.
- Перетащите ползунок вниз и подтвердите изменения.
- Если система попросит вас ввести пароль, введите его.
- Перезагрузите компьютер.
Более того, хотя мы говорим об ограничениях, сторонний антивирус может иногда блокировать выполнение различных приложений. По этой причине, если вы доверили защиту системы стороннему решению, обязательно отключите ее временно. Некоторым пользователям удалось заставить Android Studio работать, когда защита в режиме реального времени была отключена.
4: переустановите все связанные приложения
Наконец, все оставшиеся решения, которые мы можем понять и включить в этот список, указывают на переустановку. Теперь, как мы уже упоминали, обновление системы до Windows 10 должно позволить вам использовать все приложения из предыдущей итерации Windows. Однако в этом случае мы настоятельно рекомендуем переустановить все и начать с нуля.
- ЧИТАЙТЕ ТАКЖЕ: 10 лучших программ для создания игр для пользователей ПК
Конечно, если у вас есть несколько проектов, обязательно сделайте их резервную копию перед удалением Android Studio и SDK. Надеюсь, вы сможете продолжить работу позже. Здесь можно скачать Java SE Development Kit.А последнюю версию Android Studio-совместимой версии для Windows 10 можно найти здесь.
Это должно сделать это. Не забудьте поделиться альтернативными решениями в разделе комментариев ниже. Мы будем благодарны за ваше участие в этом деле.
Источник
Android Studio не развертывает изменения в приложении
Иногда такой сценарий возникает при разработке. Я бы внес изменения в свой исходный код, нажал «Сохранить все» и затем запустил, но изменение, очевидно, не отразится в приложении — (я использую устройство для тестирования). Я даже могу удалить приложение на своем устройстве и снова нажать «Выполнить», но только что установленное приложение все еще не отразило изменения в исходном коде. Когда это происходит, мне нужно отредактировать исходный код, нажать «Выполнить», и, возможно, тогда новая версия с ожидаемыми мной изменениями будет на устройстве.
Я также попробовал это решение, но оно, похоже, не часто работает.
16 ответов
У меня такая же проблема. Эта ветка появилась первой, когда я ее искал. Решил (надеюсь на это), не используя функцию мгновенного запуска. Возможно, это не лучшее решение, но пока оно работает.
Просто перейдите в «Файл -> Настройки -> Создание, выполнение, развертывание -> мгновенный запуск» и просто отключите его. С помощью этой студии Android скрепляется с нуля каждый раз, но это лучше, чем не здание правильно.
Мини-напыщенная речь: почти каждая версия Android Studio содержит досадную ошибку. Они собираются выпустить версию 2, но ее бета-версия все еще содержит ошибки. Я надеюсь, что они стабилизируют IDE в ближайшем будущем.
Вы можете понять, развернут код или нет, поместив точку останова отладки в новую строку, которую вы добавили. Если на точке останова стоит крестик, это означает, что она не развернута. Вам нужно очистить и пересобрать проект.
Для меня удаление, переустановка приложения не работает. То же самое с отключением мгновенного бега.
При переходе к device settings >> Apps >> myApp >> Clear caches & clear data новые изменения развертываются в приложении.
Смотрите скриншот ниже. Подчеркнутый — Мгновенный запуск. Лучше работает в Android Studio 4.1.1
Нижний круг — «Применить изменения».
Android Studio 4 даже отображает представление, не запуская приложение. Измените что угодно и посмотрите результат. Очень полезно для разработчиков пользовательских представлений.
У меня такая же проблема, я снял флажок «Мгновенный запуск», а также попробовал «очистить и запустить», но он не работает. Я попытался синхронизировать его с градиентом, но проблема все равно была. Он разрешается только в том случае, если я полностью перестрою его, удалив папку сборки.
У меня сработало то, что я добавил плохой xml в один из моих XML-файлов макета, попытался создать и получил ошибку, затем отменил изменение и снова отладил. Не красиво, но довольно быстро.
Еще одна вещь, которая, кажется, работает большую часть времени: отключите и снова подключите телефон / устройство разработки. Кажется, это вызывает переустановку, по крайней мере, на моей машине с Linux.
Та же проблема началась после того, как я обновил buildVersion с 23. Пытался удалить AVD и воссоздать синхронизацию с файлами Gradle. Ничего не помогло. Полная переустановка Andriod Studio устранила проблему. Возможно, это не решение, но это сработало только для меня.
У меня была такая же проблема, я пробовал все, например, очистить и перестроить, gradle-sync, даже удалить и установить приложение, но заметил, что сработало. Другие устройства работали нормально, но на моем мобильном телефоне проблема все еще сохранялась. Затем я понял, что случайно создал копию файла макета layout-v26 и внес изменения в этот файл, поэтому дизайн не обновлялся. Поэтому я просто удалил дублированный макет из Project>app>main>res>layout-v26 , и проблема была решена. Поэтому убедитесь, что вы не создали ни одного из этих файлов, не осознавая этого.
Убедитесь, что у вас нет альтернативного макета. Если вы это сделаете, вы можете изменить один и развернуть другой.
Для меня мгновенный запуск был кошмаром, время сборки 2-5 минут, и, к сожалению, часто последние изменения не включались в сборки. Я настоятельно рекомендую отключить мгновенный запуск и добавить эту строку в gradle.properties:
Первая сборка часто занимает некоторое время для больших проектов (1-2 минуты), но после ее кэширования последующие сборки обычно выполняются быстро ночью ( 1
Также я решил это, не используя функцию Instant Run. Возможно, это не лучшее решение, но пока оно работает. Я использую Android Studio 2.0 beta 2 .
На данный момент я решил проблему, закрыв приложение и снова запустив его. Оно работало завораживающе. Пока не уверен, что это совпадение, но я думаю, стоит попробовать.
Мне действительно интересно, работает ли это и с некоторыми другими людьми. Давайте попробуем и дадим мне знать.
В Android Studio 3.6.3 вы можете включить автоматический перезапуск в случае сбоя мгновенного запуска.
Просто зайдите в Файл | Настройки | Сборка, выполнение, развертывание | Развертывание и установите флажки.
Это было настоящим препятствием, пока я не понял, что мои изменения не должны распространяться на все соответствующие файлы .
Если у вас возникли проблемы с макетами, как у меня, вы можете обнаружить, что вам нужно обновить макет в папке res> layout-v17 . Я внес изменения в представлении «Дизайн» в папке layout , и изначально казалось, что эти изменения автоматически распространяются на layout-v17 . Однако более поздних изменений НЕ БЫЛО.
Проверьте папку res> layout-v17 и посмотрите, отражают ли файлы .xml в этой папке изменения, которые вы видите в своем макете res> папка. Вы, вероятно, обнаружите, что это не так. Исправьте это и повторно разверните. Как и я, вы должны увидеть новые модификации кода.
Надеюсь это поможет.
У меня была такая же проблема, используя Android Studio 2.0.0, я решил ее, перестроив мой проект.
Build > Rebuild Project
Или с помощью Очистить и повторить
Run > Clean and Rerun
РЕДАКТИРОВАТЬ2 (2020-03-09)
Если вы используете gradle 6.0 в своем gradle-wrapper.properties, вы также можете столкнуться с аналогичной ситуацией, потому что существует эта ошибка в версии 6.0. Вместо этого попробуйте 6.0.1.
Вчера (27.03.2018) Android Studio опубликовала официальное обновление с 3.0.1 до 3.1, и похоже, что многие (включая меня) снова сталкиваются с этой проблемой.
Кредит на комментарий №5 здесь, ниже показано, как это было решено:
В Android Studio перейдите в Run > Edit Configuration .
В разделе Before launch: , если вы не можете найти Gradle-aware Make , как показано ниже:
Добавьте Gradle-aware Make и оставьте Task пустым.
Предупреждение . Я не знаю, что означают эти действия и вызовут ли они какие-либо побочные эффекты. Спасибо, если кто-то может дать больше объяснений по этому поводу!
ИЗМЕНИТЬ
Благодаря ссылке @ChristopherSmit, на этой странице упоминается, что Gradle-aware make означает «Скомпилируйте проект и запустите Gradle».
Сначала я предполагаю, что это может заставить Run занять больше времени, даже если код не был изменен; но после тестирования второй раз все равно будет намного быстрее, если код не был изменен.
Учитывая тот факт, что это вариант по умолчанию, если вы создаете новый проект с использованием AS 3.1, я думаю, что эта конфигурация довольно безопасна.
Источник