Закрыть

Присоединяйся!

Авторизуйтесь через популярные соц.сети

Вконтакте Google+
recode
0 Просмотров 2674 reCode

reCode #2: Виртуальное устройство и немного теории

В преддверии третьего выпуска, речь пойдет о виртуальном устройстве. Я покажу парочку примеров на Java со всевозможными комментариями и дам пару заданий для практики.

Виртуальное устройство

В прошлом выпуске я описывал способ запуска только что собранного приложения на вашем телефоне. Почему же сразу не рассказал про виртуальное устройство? С самого начала я знал лишь про AVD (Android Virtual Device)который можно создать прямо из Android Studio при помощи утилиты AVD Manager, но при попытке запустить на нем наше приложение, я столкнулся с некоторыми проблемами, решения которых нашел в интернетах. «Умный в гору не пойдет, умный гору обойдет», — сказал себе я тогда и пошел по простому пути, запустив апп на своем смартфоне.

Сейчас же пришло время рассказать вам про виртуальные устройства. «Почему не запускать на своем железе?»— спросите вы. Отвечаю: если вы в дальнейшем собираетесь заниматься Android-разработкой, то так или иначе вам придется столкнуться с тестированием вашего приложения на разных устройствах, в этой ситуации нет ничего проще, чем эмулировать требуемый девайс прямо на вашем компьютере. Теперь почему не встроенный AVD:

  • непростая настройка каждого устройства
  • сильные тормоза эмулятора
  • некоторые проблемы, связанные с «общением» AS и AVD

Хочу поведать вам про один эмулятор Android-устройств, на который я наткнулся около полугода назад. Тогда у меня не было времени на обучение Android-разработке, поэтому я поигрался с эмулятором и забросил его, но после выхода первого выпуска reCode  мне про него напомнил один член нашей команды, и я понял, что это лучший способ проверки собранного Android-приложения. Называется он Genymotion. Нам будет достаточно бесплатной версии, но для того, чтобы скачать его, надо будет зарегистрироваться. Далее аккаунт понадобится для создания виртуальных устройств. Не думаю, что у вас возникнут какие-либо проблемы с установкой, поэтому сразу покажу, как им пользоваться. После первого открытия Genymotion, программа предложит нам создать виртуальное устройство, жмем Yes. Screen Shot 2014-06-05 at 16.20.14 После чего попадаем в меню доступных устройств, но так как мы не залогинены, то список будет пуст (у меня уже скачан нужный мне девайс). Чтобы можно было скачать устройства, жмем Connect и логинимся. Screen Shot 2014-06-05 at 16.20.47   Выбираем устройство из перечисленных: Screen Shot 2014-06-05 at 16.21.31   Даем имя нашему устройству. Оно никак не повлияет на его работу. Screen Shot 2014-06-05 at 16.21.38 Ждем, пока приложение скачает выбранное нами устройство. Screen Shot 2014-06-05 at 16.21.42   После того, как оно загружено, мы можем видеть список установленных устройств. Запускаем нужное.Screen Shot 2014-06-05 at 16.22.20 По сравнению с AVD, виртуальный девайс, созданный Genymotion, работает гораздо быстрее. Устройство запустилось.Screen Shot 2014-06-05 at 16.23.30 Теперь идем в Android Studio, откуда запускаем наше приложение из предыдущего выпуска.Screen Shot 2014-06-05 at 16.23.42 Genymotion эмулирует подключение девайса к системе, поэтому Android Studio будет думать, что девайс подключен через  ADB. Screen Shot 2014-06-05 at 16.24.03 Выбираем запущенное устройство, возвращаемся к нашему девайсу и радуемся! Screen Shot 2014-06-05 at 16.24.16

Немного о Java

Перед тем, как использовать какой-либо сложный код в своем приложении, его нужно протестировать в среде разработки.

Среда разработки или IDE (Integrated development environment) — набор программных средств, используемых для разработки программного обеспечения. Как правило представляет из себя органайзер для проектов, редактор со всеми прелестями (подсветка синтаксиса, указание на ошибки), набор инструментов для отладки проекта и подключаемые плагины. Безусловно, можно работать в блокноте и компилировать всё из командной строки, но в среде разработки писать код в разы легче, поэтому я всё же советую использовать её.

Есть две всемирно известные среды разработки: IntelliJ IDEA и Eclipse. Вопрос выбора «Eclipse или IDEA?» — это один из вечных вопросов, для которых нет однозначного ответа. Каждому своё. Меня вот IDEA полностью устраивает. Пришло время выбрать что-нибудь одно, скачать и установить. Процесс установки не замысловат, описывать его я не буду. Некоторые поинтересуются, почему я не стал использовать плагины для Android-разработки прямо в этих IDE. Это дело вкуса. Мне для разработки Android Studio больше нравится, тем более, что она имеет поддержку напрямую от Google, что не может не сказаться положительно. Если вы не знаете о Java вообще ничего, то советую почитать вот эту книжку. Прошлым летом я учился основам Java вместе с ней.Сейчас же хочу показать некоторые примеры кода со своими комментариями, чтобы не осталось непонятных моментов. Если вы никогда не видели код на Java, то советую свободное время на следующей неделе посвятить именно той книге, а потом вернуться и посмотреть на мои примеры.

Пример первый: Начну с простого — сумма первых натуральных чисел. ИСХОДНИК

Screen Shot 2014-06-12 at 13.09.49

Пример второй: проверяем число на четность. ИСХОДНИК

Screen Shot 2014-06-12 at 13.52.55

Пример третий: числа Фибоначчи.

Числа Фибоначчи — элементы последовательности Фибоначчи, которая определяется так: каждое последующее число есть сумма двух предыдущих. При этом определяются первые два элемента: две единицы. Таким образом первые члены последовательности выглядят так: 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89.

Мы же попытаемся по номеру числа определить само число. ИСХОДНИК

Screen Shot 2014-06-12 at 14.49.26

Для того, чтобы набить руку, советую сделать следующее:

  • сумма первых четных чисел
  • проверить, является ли n-ое число Фибоначчи четным/нечетным

Примеры алгоритмов я буду давать в таком ключе, поэтому советую в перерывах между выпусками reCode почитывать книжечку, ссылку на которую я дал. Чтение какой-либо другой литературы всегда будет вам огромным плюсом, дерзайте! По всем вопросам ко мне можно обращаться как в комментарии под этим выпуском, так и ко мне в твиттер @phobosl0l. До встречи на следующей неделе.

Комментариев 0

Авторизуйтесь через популярные соц.сети

Вконтакте Google+