Android Studio 2.0 Мгновенный запуск не работает

Эта новая функция, Instant Run, работает не всегда, как описано. Я просто изменяю цвет краски в тексте и Instant Run, он возобновляет активность! Но после изменения какого-то другого кода Instant Run работает довольно хорошо. Я что-то пропустил?

3 ответа

Решение

Instant Run выглядит как отличный инструмент в нашем арсенале, просто имейте в виду, что это новое дополнение к Android Studio 2.0, которое все еще находится в Preview (Канарский канал), поэтому могут быть некоторые сбои. Как говорит Google, они планируют улучшить его в ближайшие месяцы. На момент написания статьи вот что поддерживается:

+--------------------------------------+-----------------------------------------+
|           Code Change                |         Instant Run Support             |
+--------------------------------------+-----------------------------------------+
| Change instance method implementation| Supported                               |
| Change static method implementation  |                                         |
| Add or remove a class                |                                         |
|--------------------------------------|-----------------------------------------|
| Add, remove, or change               | Supported but requires an Activity      |
| a string resource                    | restart.                                |
+--------------------------------------+-----------------------------------------+

И вот некоторые изменения кода, которые Instant Run в настоящее время не поддерживает:

  • Добавить / удалить / изменить аннотации
  • Добавить / удалить / изменить поле экземпляра
  • Добавить / удалить / изменить статическое поле
  • Добавить / удалить статическую подпись метода
  • Изменить подпись статического метода
  • Добавить / удалить экземпляр метода
  • Изменить подпись метода экземпляра
  • Изменение родительского класса, от которого наследуется текущий класс
  • Изменить список реализованных интерфейсов
  • Изменение статического инициализатора класса

У меня был похожий опыт тестирования Instant Run, но этого стоит ожидать на данном этапе. Эй, это даже не сработало несколько раз для Дэйва Бёрка во время Android Dev Summit;)

Как насчет использования Gradle Apt, например apply plugin: 'com.neenbedankt.android-apt'? Предотвращает ли использование apt Android Studio Instant Run возможность горячей замены кода?

В моем случае я использую Dagger 2 и Instant Run не работает.... Я что-то упустил?

РЕДАКТИРОВАТЬ: НЕТ - ЭТО НЕ!:) В моей установке явно чего-то не хватало - как во время презентации Дэйва. Мгновенный запуск все еще кажется нестабильным при просмотре 2.0 3b...

Функция мгновенного запуска требует некоторых правил, которые;

  • Плагин Android для Gradle версии должен быть 2.0.0 или выше
  • minSdkVersion должно быть 15 или выше
  • В то же время, если вы используете поддержку multidex (multiDexEnabled true) для вашего приложения, minSdkVersion должно быть 21 или выше. В противном случае, Android Studio отключает Instant Run.

Ref:

https://developer.android.com/studio/run/index.html https://developer.android.com/studio/build/multidex.html

Но я все еще могу использовать функцию мгновенного запуска в моем проекте, хотя его минимальная версия SDK - 14.

Другие вопросы по тегам