2017-02-13 11 views
0

У меня есть новая установка Android Studio, и я начинаю свой первый проект. Я искал способы ускорить мой цикл развертывания/тестирования, когда я прочитал, что у меня уже должна быть включенная функция Instant Run.Android Studio 2.2.3 Instant Run не является вариантом

Я проверил несколько параметров:

  • Tools->Android->Enable ADB Integration проверяется

  • File->Settings->Build, Execution, Deployment->Instant RunВключить Instant Run ... проверяется вместе с Restart активности на изменения кода и Показать Тосты в бегущем приложении ...

  • Мой эмулятор является Nexus 5, API 24

  • Андроида Gradle плагин определяется как: classpath 'com.android.tools.build:gradle:2.2.3'
  • Проект minSdkVersion 16 и targetSdkVersion составляет 25

И все же, Instant Значки запуска не отображаются в моих конфигурациях запуска, а повторное развертывание включает перезапуск всего приложения и занимает около минуты. Некоторые возможности для ошибки:

  • Я прочитал, что DDMS необходимо отключить для Instant Run для работы в другом вопросе. Я не знаю, правда ли это, поскольку я не вижу в нем упоминания в официальной документации, но если я перейду на монитор Android-устройств , я вижу кнопку DDMS, которая не может быть снята.

  • Предвкушая будущую интеграцию, я включил этот проект для включения кода C++. Я не уверен, что это играет определенную роль.

+0

Это правда. Если Android Device Monitor открыт, то активировать интеграцию ADB будет автоматически отключена –

+0

Я думаю, что приложения с собственной частью не совместимы с мгновенным запуском. Попробуйте без C++ intergation. – poss

ответ

0

я остановился на двух разных фронтах.

  1. Предполагалось, что в будущем для этого проекта я буду использовать C++-библиотеку и создан с поддержкой поддержки C. Использование этого типа родной библиотеки предотвратит работу Instant Run.
  2. Я хотел воспользоваться последними функциями Java 8, в данном случае - лямбда-выражениями и потоками. К сожалению, для этого необходимо использовать опцию jacktoolchain, которая предотвратит работу Instant Run. В общем, я обнаружил, что эти функции в любом случае неэффективны, поэтому я решил вернуть Java 1.7 (вставьте здесь грусть) и получайте выгоду от возможности быстрого развертывания.

Поскольку новые возможности Java 8 настолько мощные, я надеюсь, что они будут доступны разработчикам раньше, чем позже. Один из вариантов, который я не изучил, - это использование системы горячей замены Zero Turnaround с Java 8, и я буду изучать это.

Для тех, которые приходят сюда, чтобы диагностировать Мгновенные проблемы Run, знают, что проверка «Показывать уведомления о состоянии Instant Run» в Settings -> Build, Execution, Deployment -> Instant Run может дать ценные подсказки, чтобы проблемы с этой функцией (Android Studio, 2,2)

1

Проверьте minSdkVersion установлен, по меньшей мере, 15 и Android plugin for Gradle version по крайней мере 2.0.0.

Вы можете проверить все детали здесь

https://developer.android.com/studio/run/index.html#instant-run

+0

извините, это уже было проверено. Я обновлю свой вопрос, чтобы – IcedDante