Розробка андроїд-додатків: основні інструменти. Аналіз середовища розробки мобільних програм android studio Середа розробки під android

Як відбувається процес розробки під Android? Виділимо кілька основ:

  • У Java файлах ви описуєте логіку програми - те, що ви хочете, щоб ваша програма виконувала.
  • У файлах XML ви розробляєте макети — зовнішній вигляд.
  • Як тільки програма буде написана, потрібно використовувати інструмент збирання для того, щоб скомпілювати всі файли і запакувати їх разом в.apk файл, який можна запускати на пристроях Android та/або опублікувати в Google Play.
  • Усі утиліти та файли, які використовуються для створення програми під Android, об'єднані в інтегроване середовище розробки (IDE). IDE - це програма, яку ви відкриєте для редагування ваших файлів коду, а також компіляції та запуску.
  • Раніше стандартною IDE для розробки під Android була Eclipse, але зараз її замінила функціональніша Android Studio — продукт компанії Google.

Ви, звичайно ж, знайдете глибші процеси, що відбуваються за лаштунками вищезгаданих кроків. Наприклад, просунуті користувачі захочуть дізнатися про роль віртуальної машини Dalvik. Наприкінці статті будуть перераховані посилання на корисні ресурси, з якими повинен бути знайомий кожен Android розробник. Першим із них є офіційна документація від Google.

  • Завантажимо та встановимо Android Studio.
  • Дізнаємося про запуск та тестування програм на пристроях та емуляторах Android.
  • Створимо простий додаток на Android, який виводить напис Hello World на екран мобільного пристрою.

Наприкінці статті ви можете ознайомитись з корисними рекомендаціямипочатківцям розробникам від компанії.

Встановлення середовища розробки Android Studio

Почати читати документацію і писати код щоб дізнатися на що здатна платформа - це дійсно привабливо. І ми скоро це зробимо! Однак, для початку роботи з платформою Androidнеобхідно настроїти середовище розробки.

Початківцям у програмуванні під Андроїд особливо важливо не поспішати і методично дотримуватися кожного кроку. Навіть якщо ви виконуєте кроки правильно, може знадобитися усунути невелику проблему з налаштуванням середовища в залежності від конфігурації вашої системи або версії продукту. Для цього використовуйте пошукові послуги. Особливо можна виділити ресурс StackOverflow.

Важливо не допустити, щоб будь-які підводні камені перешкоджали вашій кінцевій меті - навчитися програмування Android. Відомо, що навіть професіонали іноді мають певні проблеми з налаштуванням робочого оточення. У таких випадках буває важливим є знання командного рядка. Якщо ви хочете краще ознайомитися з цим інструментом, внизу наводиться посилання на гарний вступний .

Поряд із тренуваннями в синтаксисі, важливо навчити себе мисленню успішного програміста, яке не прийматиме повідомлення про помилку file X not found остаточним вироком. Таке мислення легко тренується вами у випадках, якщо ви не здаєтеся і шукайте рішення проблеми, що виникла.

Перейдіть на сторінку Android Studio developer.android.com/studio/index.html та знайдіть кнопку для завантаження останньої версіїдля своєї платформи.

Клацніть по кнопці завантаження і вас попросять ознайомитися з правилами та умовами використання програмного продукту. Після уважного прочитання (як ви завжди це робите) і прийняття починається завантаження. Ймовірно, це триватиме кілька хвилин. Після цього ви можете встановити Android Studio аналогічно до будь-якої іншої програми. на початковій сторінціЗавантаження містять інструкції з інсталяції під Mac та Windows.

Тепер, коли ви встановили Android Studio, запустимо його! Відкрийте Android Studio. Програма запитає, чи ви хочете імпортувати свої настройки. Оскільки ви починаєте з нуля, просто оберіть другий пункт і продовжуйте.

Ви повинні побачити гарний завантажувальний екран у стилі Material Design.

Після закінчення завантаження ви потрапите на екран привітання.

Навіть у тому випадку, якщо ви щойно завантажили Android Studio, у вас може бути не остання версія. Щоб уникнути проблем з версіями надалі, натисніть кнопку Check for updates now і, якщо необхідно, виконати всі інструкції для отримання останньої версії. Іноді Studio автоматично інформує вас про те, що є оновлення за допомогою екрана, подібного до цього:

У такому разі завжди вибирайте Update and Restart. Чудово! Ми успішно впоралися із встановленням середовища для розробки.

Створення першого Android проекту

Настав час створити перший проект. Почнемо із простого. У програмістів прийнято називати першу програму Hello World. Давайте слідувати цій традиції, а потім зробимо кілька невеликих змін, щоб програма використовувала ваше ім'я для привітання. В кінці ви зможете завантажити його на пристрій та показати своїм знайомим. Android Studio має невеликий покроковий інструмент, який допоможе створити свій проект. Натисніть "New Project" на стартовому екрані:

Заповніть його так. Не соромтеся замінити "example" у імені пакета на щось ще, щоб видалити попередження внизу екрана. Ви також можете встановити розташування проекту, вказавши будь-яку папку на жорсткому диску

Для версій SDK, що розкриваються, зверніть увагу на розділ «Опис» у нижній частині діалогового вікна. У ньому пояснюється, для чого призначене кожне налаштування.

Встановіть мінімальний потрібний SDK, як показано на знімку екрана. Це встановлює мінімальну версію Android, необхідну для запуску програми. Вибір цього значення для ваших власних проектів – це питання балансування можливостей SDK, які ви хочете, та пристроїв, які будуть підтримуватись.

Для отримання додаткової інформаціїпро версії API та їх використання, на сайті для розробників під Android існує спеціальна сторінка Dashboards https://developer.android.com/about/dashboards/index.html.

Після вибору версії відкривається екран вибору стартового шаблону. Ви можете створити програму, яка вже взаємодіє з api google maps і відображає карту. У тестовому прикладі вибираємо Empty Activity і натискаємо кнопку «Next».

І зараз ви знаходитесь на останньому кроці процесу створення програми. Перш ніж натиснути Finish, зверніть увагу на деякі речі. Тут ви вперше стикаєтеся зі згадками про головні архітектурні компоненти будь-якої програми.

  • — це перша, але не остання згадка слова Activity. У контексті Android, Activity зазвичай розглядається як "екран" у вашому додатку. Цей елемент дуже гнучкий. Коли Android Studio створює клас MainActivity, він успадковує його від класу Activity з пакету Android SDK. Ті, хто знайомий з об'єктно-орієнтованим програмуванням, розуміють цю концепцію, але для новачків, це, в основному, означає, що ваша MainActivity буде версією Activity, що налаштовується.

  • Layout Name— макет того, що буде показано користувачеві, визначено у спеціальному вигляді Android XML. Ви скоро навчитеся читати та редагувати ці файли.

Натискаємо Finish. Деякий час займе створення та завантаження проекту. Через деяке час Android Studio завершить білд вашого проекту. Звичайно, проект поки що порожній, але в ньому є все необхідне для запуску на Android-пристрої або емуляторі.

Після завантаження проекту ви переглядаєте файл макета в формат XML. Перш ніж перейти до програмування під Android, давайте поговоримо про те, як ми можемо запустити цю програму. Настав час сказати «Hello world!».

Запуск програми на емуляторі

Тепер настав час сказати кілька слів про емулятор. Android Studio поставляється з програмним забезпеченням, здатним емулювати Android-пристрій для запуску на ньому програм, перегляду веб-сайтів, налагодження та всього іншого.

Цю можливість надає Android Virtual Device (AVD) Manager. За бажанням ви можете налаштувати кілька емуляторів, встановити розмір екрану та версію платформи для кожного нового емулятора. Цей функціонал дуже корисний, оскільки позбавляє розробників необхідності купувати кілька пристроїв для тестування програм.

Натисніть кнопку Run у вигляді зеленої стрілки.

Прийде почекати деякий час, поки емулятор завантажиться і як тільки він буде готовий, ви побачите щось на зразок цього:

Мої вітання! Ви зробили свій перший додаток для Android!

І так ... Чому і як це спрацювало?

Щоб почати робити зміни та додавати цікаві функції, необхідно отримати робоче знання про те, що відбувається за лаштунками. Погляньте на розділ проекту Android Studio з файлами та папками у лівій частині екрана. Можливо, вам знадобиться натиснути маленьку вкладку на краю (див. нижче), якщо на Наразіпровідник проекту не відображається.

Перегляньте кілька хвилин структуру папок і двічі клацніть по файлах, щоб побачити їх вміст у головному вікні. Якщо все це виглядає загадково, не хвилюйтесь!

Структура Android проекту: Команда

Кожна хороша команда складається з людей, які виконують відведені їм ролі. Ви хочете виконати роботу правильно? Вам потрібна правильна команда. У проектах Android є кілька ключових елементів, і кожен із них має відіграти певну роль:

Java: Професіонал

Це частина вашого коду, яка відповідає за логіку програми. Ваш код знаходиться в каталозі src\main\java в основній папці проекту. Для вивчення Java можна порадити книгу Брюса Еккеля "Філософія Java";

Resources: Артист

Недостатньо просто зробити Android додаток, він повинен бути ще й стильним. Ваша програма ніколи не буде виділятися, якщо у нього немає чітких значків та зображень, добре продуманих макетів і, можливо, навіть плавних анімацій.

При ініціалізації папка містить такі папки:

  • drawable, в якій зберігаються іконки. Зараз там лежить лише стандартна іконка програми.
  • layout з XML файлами, які є дизайн екранів.
  • menu c XML файлами списків елементів, які відображатимуться на панелі дій.
  • values ​​з XML файлами, що містять розміри, кольори, строкові константи та стилі.

AndroidManifest.xml: Бос

Цей XML-файл інформує вашу систему про вимоги до обладнання та програмного забезпечення програми та містить його версію ім'я та значок. Маніфест також містить інформацію про всі Activity у додатку. Вам потрібна робота, яку виконує ваш додаток? Спочатку поговоріть із начальником.

Внесення змін

Перейдіть до res/values/strings.xml і двічі клацніть файл. Коли ви відкриєте файл, ви побачите два рядкові ресурси в XML.

Ці ресурси використовуються в різних місцях, але дуже зручно мати весь текст, який використовується у вашому додатку в одному файлі. Якщо вам потрібно перекласти його або якщо ваш колега з маркетингу попросить видалити всі зайві посилання, тут буде легко внести всі зміни.

Змініть рядок hello_world, який програма відображає на екрані. Змініть її вміст на щось більш особисте, наприклад, використовуйте ваш власне ім'я. Вийде щось на кшталт:

Matt is learning Android!

Натисніть Run. Програма повинна перезапуститись і ви побачите персональне повідомлення:

Ми вітаємо вас – ви зробили перший проект та навчилися редагувати вихідний код. Перший крок у Android програмуваннізроблено. Бажаємо удачі на цьому непростому, але дуже цікавому шляху! Якщо вам потрібна професійна розробка програми для Android, звертайтеся до фахівців Infoshell.

У цій статті передбачається, що ви використовуєте середовище розробки Eclipse та Android Developer Tools для Eclipse. Найпростішим шляхом для того, щоб розпочати розробку програм Android, стане завантаження набору засобів розробки Android SDK та середовища розробки Eclipse IDE (див. ). Розробка на Android може вестись на Microsoft® Windows®, Mac OS X або Linux.

Програми Android пишуться на мовою Java, але компілюються і виконуються в віртуальній машині Dalvik (а не Java-віртуальна машина). Написання коду на мові Java у Eclipse дуже інтуїтивно; Eclipse надає широкі можливості Java, включаючи контекстно-залежну допомогу та підказки з пропонованим кодом. Коли код Java буде скомпільований, плагін Android Developer Tools переконається в тому, що програма правильно упакована, включаючи файл AndroidManifest.xml.

Програми Android можна розробляти не використовуючи Eclipse та плагін Android Developer Tools, але для цього потрібні знання в Android SDK.

Android SDKпоширюється як файл ZIP, який можна розпакувати в папку на жорсткому диску. Оскільки вже було кілька оновлень SDK, рекомендується організувати ваше середовище розробки таким чином, щоб можна було легко перемикатися між різними інсталяціями SDK. У SDK входять:

- android.jar
Архівний файл Java, що містить усі класи Android SDK, необхідні для створення програм

- documention.html та папка docs
Документація SDK, що надається локально та в мережі Інтернет. В основному вона представлена ​​у формі JavaDocs, забезпечуючи легкість навігації по множині пакетів SDK. Документація містить також добре організоване Посібник розробника та посилання великої спільноти Android.

-Папка Samples
Папка Samples містить вихідні кодибезлічі програм, включаючи ApiDemo, що використовує багато функцій API. Додаток-приклад може стати хорошим початком розробки додатків Android.

-Тека Tools
Містить всі інструменти командного рядка для створення програм Android. Найчастіше використовується і найкориснішим інструментом є утиліта adb (Android Debug Bridge).

-Тека usb driver
Папка, що містить драйвери, необхідні для забезпечення зв'язку між середовищем розробки та пристроєм Android, такі як смартфон G1 або Android Dev 1. Ці файли необхідні тільки для розробників на платформі Windows.
Додаток Android може бути запущено на реальному пристрої або на Емулятор Android, який постачається разом з Android SDK. На Малюнку 3 представлено головний екранЕмулятор Android.

Рисунок 3. Емулятор Android

Android Debug Bridge
Утиліта командного процесора adb підтримує кілька необов'язкових аргументів командного рядка, які забезпечують такі потужні можливості, як копіювання з пристрою та на нього. Аргумент командного рядка дозволяє з'єднуватися безпосередньо з телефоном та видавати елементарні команди командного процесора.
На Рисунку 4 представлена ​​утиліта командного процесора adb, що діє по відношенню до реального пристрою, з'єднаному за допомогою кабелю USBдо лептопу під керуванням Windows.

Рисунок 4. Використання утиліти adb


У цьому оточенні командного рядка ви можете:
- Відобразити мережну конфігурацію із зазначенням різних мережних з'єднань. Зверніть увагу на сполуки:
-- локальне з'єднання або з'єднання з зворотним зв'язком.
-- tiwlan0 - WiFi з'єднання з адресою, наданою локальним сервером DHCP.
- Відобразити вміст змінної оточення PATH.
- Виконати команду su для отримання прав суперкористувача.
- Перейти до папки /data/app, де зберігаються програми користувача.
- Зробити роздруківку папок, можна побачити одиничний додаток. Файли додатків Android є архівними файлами, які можна переглянути за допомогою WinZip або іншої програми. Розширення – apk.
- Видати команду ping для визначення доступності Google.com.
У цьому оточенні командного рядка ви можете взаємодіяти з базами даних SQLite, запускати програми, виконувати безліч інших завдань системного рівня. Це досить вражаюча функція з огляду на те, що ви з'єднані з телефоном.

Перш ніж почати розробляти програми під Android, розглянемо існуючі інструменти, що підходять для цих цілей. Можна виділити необхідні інструменти, без яких розробка мобільних додатківпід Android просто неможливо. З іншого боку, існує велика кількість допоміжних систем, певною мірою спрощують процес розробки.

До обов'язкових інструментів відноситься Android SDK - набір засобів програмування, який містить інструменти, необхідні для створення, компіляції та збирання мобільного додатка.

Розглянемо коротко найважливіші інструменти, що входять до складу Android SDK:

Ми розглянули основні інструменти, що входять до складу Android SDK, зрозуміло, не все недостатньо докладно. Для більш серйозного вивчення інструментів можна звернутися до сайту розробників (http://developer.android.com/tools/help/index.html). Для розробки мобільних програм під Android впевненого володіння інструментами з SDK цілком достатньо. Якщо ж виникають якісь питання, додаткові інструкціїстворення проектів, компіляції, запуску з командного рядка містяться в посібнику від Google (http://developer.android.com/training/basics/firstapp/index.html).

У сучасних умовах розробка програмного забезпечення в більшості випадків ведеться з використанням інтегрованих середовищ розробки (IDE). IDE мають безперечні переваги: ​​процес компіляції, складання та запуску програми зазвичай автоматизований, у зв'язку з чим для початківця розробника створити свій перший додаток праці не складає. Але щоб займатися розробкою всерйоз, необхідно витратити сили та час вивчення можливостей самого середовища. Розглянемо IDE, придатні для розробки під Android 1 Зрозуміло, огляд не претендує на повноту і найшвидше знайдуться не охоплені ним інструменти (а то й з'являться нові), але найпопулярніші на кінець 2013 будуть розглянуті. .

Для початку поговоримо про два середовища розробки, які рекомендує Google: Android IDE (ADT) та Android Studio.

Android IDE- середовище розробки під Android, засноване на Eclipse. Надає інтегровані інструменти для розробки, збирання та налагодження мобільних додатків. У цьому курсі Android IDE вибрано як основне середовище розробки. Можливості цього середовища докладніше розглянуті у першій лабораторної роботи. Також там дано рекомендації щодо встановлення та налаштування середовища, створення та запуску першої програми як на емуляторі, так і на реальному пристрої.

Android Studio- середовище розробки під Android, засноване на IntelliJ IDEA. Подібно до Android IDE, вона надає інтегровані інструменти для розробки та налагодження. Додатково до всіх можливостей, очікуваних від IntelliJ, в Android Studio реалізовано:

  • підтримка складання програми, заснованої на Gradle;
  • специфічний для Android рефакторинг та швидке виправлення дефектів;
  • lint інструменти для пошуку проблем із продуктивністю, з юзабіліті, із сумісністю версій та інших;
  • можливості ProGuard (утиліта для скорочення, оптимізації та обфускації коду) та підпису додатків;
  • засновані на шаблонах майстра для створення загальних Android конструкцій та компонентів;
  • WYSIWYG редактор, що працює на багатьох розмірах екранів та дозволів, вікно попереднього перегляду, що показує запущений додатокодночасно на кількох пристроях та в реальному часі;
  • вбудована підтримка хмарної платформи Google.

Перейдемо до розгляду інших інструментів, придатних для розробки мобільних програм під Android. Почнемо з інструментів від Intel – Intel XDK та Intel Beacon Mountain.

Intel XDKдозволяє легко розробляти кросплатформні мобільні програми; включає інструменти для створення, налагодження і складання ПЗ, а також емулятор пристроїв; підтримує розробку для Android, Apple iOS, Microsoft Windows 8, Tizen; підтримує мови розробки: HTML5 та JavaScript.

Остання тема даного курсуповністю присвячена вивченню нового покоління інструментальних засобів розробки мобільних HTML5-додатків та Intel XDK, передбачається розробка мобільного додатка з використанням цих інструментів.

Intel Beacon Mountain- середовище розробки, що дозволяє створювати програми для пристроїв, що працюють під керуванням ОС Android. Надає інструменти необхідні для проектування, розробки, налагодження та оптимізації програм під Android. Звільняє розробника від необхідності підтримувати систему розробки в актуальному стані, стежить за оновленнями та додає їх у середу розробки у міру появи. Підтримує розробку для цільових платформ на основі процесорів Intel Atom та ARM.

Beacon Mountain побудована на основі Android IDE (Eclipse, Android ADT, Android SDK), для більш серйозної розробки та оптимізації додані наступні інструменти Intel:

  • Intel* Hardware Accelerated Execution Manager (Intel* HAXM)- Апаратно підтримуваний процесор віртуалізації, що використовує технологію віртуалізації Intel * (Intel VT) для прискорення роботи емулятора в середовищі розробки.
  • Intel* Graphics Performance Analyzers (Intel* GPA) System Analyzerпідтримує мобільні пристрої з процесором Intel Atom під керуванням ОС Android. Дозволяє розробникам оптимізувати завантаженість системи при використанні процедур OpenGL, надаючи можливість отримувати безліч системних метрик у реальному часі, що відображають завантаженість CPU, GPU та OpenGL ES API. Розробник може запустити кілька графічних експериментів виявлення вузьких місць у обробці графіки.
  • Intel* Integrated Performance Primitives (Intel* IPP) Preview- бібліотека оптимізованої обробки даних та зображень, що підтримує мобільні пристрої з платформою Intelпід керуванням ОС Android. Preview версія є частиною повної версії Intel IPP, яка також підтримує ОС Android.
  • Intel Threading Building Blocks (Intel TBB)- широко використовується, визнана бібліотека шаблонів С++ для створення додатків, що масштабуються, і збільшення продуктивності. Підтримує мобільні пристрої з платформою Intel під управлінням Android. Перевірені алгоритми дозволяють розробникам ефективно розпаралелити С++ мобільні програми, що підвищує продуктивність при зниженні енергетичних витрат.

Завантажити Intel Beacon Mountain можна за посиланням

Не можна залишити без уваги інструментарій Marmalade SDK.

Marmalade SDK- Кросплатформне SDK від Ideaworks3D Limited. Являє собою набір бібліотек, зразків, інструментів та документації, необхідних для розробки, тестування та розгортання програм для мобільних пристроїв. Використовується в основному для розробки ігор. Багато хто отримав визнання гри, такі як Cut the Rope і Plants vs. Zombies, були розроблені з використанням цього програмного засобу. На жаль, Marmalade SDK є пропрієтарним програмне забезпечення(найдешевша ліцензія $15 на місяць) і не може бути рекомендована в даному навчальному курсі, але читач може самостійно спробувати безкоштовну 30-денну версію, доступну за посиланням https://www.madewithmarmalade.com/free-trial.

Не можна не сказати про вітчизняні розробки. Наприклад, компанія 1С йде в ногу з часом, версія платформи 1С 8.3 дозволяє розробляти мобільні програми. Програмний продукт "1С:Підприємство 8. Розширення для кишенькових комп'ютерів"забезпечує можливість роботи з даними інформаційних баз 1С:Підприємства 8 на мобільних пристроях(кишенькових комп'ютерах, комунікаторах, терміналах збору даних), а також на персональних комп'ютерах(у тому числі ноутбуках), які не мають прямого доступу до інформаційним базам 1С: Підприємства 8.

Android пропонує розробникам безліч можливостей: це універсальна, відкрита платформа, що використовується мільйонами користувачів по всьому світу, з напрочуд простим у використанні майданчиком для розповсюдження додатків. На щастя, існує безліч інструментів для Android розробників, які допоможуть швидко почати роботу. Але ще краще те, що з кожним роком інструментів стає все більше, а їхня ефективність постійно підвищується. Ще ніколи не було такого сприятливого часу для створення власної програмипід Android!

Android Studio

Жоден топ “Найкращих інструментів для розробки програм під Android” не обходиться без Android Studio. Це офіційне IDE (інтегроване середовище розробки) для Android, створене компанією Google. Саме тому Android Studio є номером один для розробників, які хочуть створювати програми, відповідно до Material дизайну Google та доступу до розширених функцій платформи.

IDE-це місце, в якому розробник проводить більшу частину свого часу: Android Studio виступає як редактор для обраної вами мови програмування (він підтримує Java, C++, а також Kotlin, який з недавніх пір теж став офіційним мовою Android), компілятора, який може створювати APK файлиі файлової системидля організації вашого проекту. Крім цього він включає редактор XML і розширений редактор макетів. Android Studio пропонує цілий набір додаткових інструментів, деякі з яких ми розглянемо у цій статті. На щастя, більшість із них тепер можна завантажити єдиним пакетом. По суті цей пакет йде в комплекті з Android SDK, але вам все одно доведеться окремо завантажити і встановити Java JDK. І було б непогано, якби ви прочитали інструкцію для новачків з використання Android Studio.

Розробка за допомогою Java і Android SDK має дещо круту криву навчальності, але з точки зору інтеграції, підтримки та можливостей - Android Studio немає рівних.

AVD Manager

Інструмент AVD Manager іде в комплекті з Android Studio. Абревіатура AVD розшифровується як "Android Virtual Device", тому, по суті, це емулятор для запуску програм Android на вашому комп'ютері. Це дуже корисний інструмент, який дозволяє вам тестувати свої програми без необхідності встановлювати їх на фізичні пристрої. Що ще важливіше, AVD Manager дозволяє створювати безліч емуляторів із різними розмірами екрану, специфікаціями та версіями Android. Ви зможете побачити, як виглядатиме ваше творіння на будь-якому пристрої, і тим самим забезпечите підтримку серед найпопулярніших гаджетів. Продуктивність інструменту постійно покращується, особливо з режимом fast virt,який запускає на вашому комп'ютері версію Android від Intel та усуває необхідність емуляції рівня instruction.

Android Device Monitor

Ще один вбудований інструмент - Android Device Monitor, який дозволяє проводити моніторинг вашого фізичного або віртуального пристрою під час його роботи, і, натомість, отримувати інформацію про те, скільки процесів виконується по потоку, мережеву статистику, LogCat і т.д. Цей інструмент чудово підходить для тестування продуктивності ваших програм.

Android Debug Bridge

ADB - це інструмент командного рядка, за допомогою якого можна копіювати файли на пристрій і назад, встановлювати і видаляти програми, виконувати резервне копіюваннята відновлення на всіх пристроях на базі Android, у тому числі і на віртуальному. Він йде в комплекті з Android Studio і, здебільшого, вам не доведеться використовувати його. Але в поодиноких випадках вам все ж таки доведеться ним скористатися. Для цього перейдіть до папки, де знаходиться файл adb.exeта відкрийте командний рядок(Shift + RMB> Відкрити вікно команд).

Unity 3D

Unity 3D  - перший інструмент у нашому списку, який не встановлений в Android Studio. Unity 3D являє собою ігровий двигун і IDE для кроссплатформенної розробки ігор. Він дуже простий у вивченні і має великий набір функцій для розробки ігор. З допомогою Android Studio можна створити гру, але в Unity те ж саме можна зробити набагато легше, без безлічі втраченого часу і головного болю. До речі, у Unity є можливість створювати додатки з доповненою реальністю для Daydream, Cardboard або Gear VR!

Unreal Engine

Unreal Engine  - це ігровий движок і альтернативний варіантдля тих, хто цікавиться кросплатформовою та повнофункціональною розробкою ігор. Unreal, як і Unity, підтримує розробку під Android, але, у плані графіки, ігри на Unreal сильно перевершують ігри на Unity. Тим не менш, Unity має кращу вбудовану підтримку мобільних і 2D-творів, тому є кращим варіантом для більшості мобільних розробників ігор. Немає значення, який у результаті ви виберете двигун, оскільки немає чинників, з яких ви можете дати їм обом шанс.

GameMaker: Studio

GameMaker: Studio - ще один інструмент для розробки ігор, цього разу для 2D-ігор. Він набагато простіше у використанні, ніж Unity або Unreal, і дозволяє створювати ігри практично без написання коду. Однак, якщо хочете додати трохи більше налаштувань у свою гру, ви можете скористатися вбудованою мовою програмування для початківців GML або «GameMaker Language».

Однак через простоту використання ви певною мірою втрачаєте потужність і функціональність. Також варто відзначити, що GameMaker: Studio не є безкоштовним програмним забезпеченням, але є безкоштовна пробна версія.

B4A

B4A (або Basic for Android) - найменш відомий інструмент для розробки Android-додатків від компанії Anywhere Software, що спеціалізується на концепції швидкої розробки додатків (RAD). Як випливає з назви, B4A - це IDE та інтерпретатор, який дозволяє розробникам створювати програми з використанням мови програмування BASIC . Для тих, хто не знайомий з BASIC -  це процедурна мова програмування, яка читається практично як звичайна англійська мова. Незважаючи на те, що B4A-це проект, розроблений всього однією людиною, йому вдалося з'єднати в собі безліч корисних розширених функцій, таких як: бездротове налагодження через Bluetooth, візуальний редактордля додавання та впорядкування уявлень тощо. Дане ПЗ не безкоштовне.

За допомогою B4A ви можете робити практично все те саме, що ви робите за допомогою Java, але набагато швидше і з меншою кількістю шаблонів. Будь-яке зниження продуктивності, порівняно коїться з іншими IDE, мінімально. Тим не менш, вам все ще варто вивчити офіційний методстворення програм, особливо якщо ви хочете використовувати конкретні бібліотеки (але варто згадати, що бібліотеки Java можуть бути обернені для Basic4Android).

AIDE

Напевно, ви вже встигли помітити, що інструменти для розробки додатків під Android люблять абревіатури. AIDE розшифровується як "Android IDE" і він унікальний тим, що працює на Android. Це означає, що ви можете створювати програми, використовуючи свій телефон або планшет, а потім тестувати їх на цьому ж пристрої.

Швидше за все ви вже зрозуміли, що цьому IDE не вистачає деяких функцій з Android Studio (окей, дуже багатьох функцій) і у нього немає жодної реальної переваги перед більш функціональними IDE для розробки під Android. Він придатний тільки для вивчення Java і Android SDK, тому що надає можливість читати підручник з програмування і в той же момент перевіряти звідти код в режимі реального часу. Це справжня знахідка для тих, хто тільки-но почав розробляти власні мобільні проекти. AIDE не безкоштовний і, незалежно від того, хороша про нього громадська думка чи ні-його варто купити і спробувати самостійно.

Xamarinв Visual Studio

Visual Studio  - Це IDE від Microsoft, що підтримує ряд мов, включаючи C#, VB.net, JavaScript і багато іншого. За допомогою фреймворку Xamarin, який входить до Visual Studio, можна створювати кросплатформні програми за допомогою C#, а потім тестувати їх на кількох пристроях, підключених до хмари. Це гарний і безкоштовний вибірЯкщо ви плануєте випустити додаток і для Android, і для IOS, але не горіте бажанням писати свій код двічі. Також він є відмінним вибором для тих, хто вже знайомий із C# та/або Visual Studio. Мінусом є те, що Xamarin незручний у використанні Java бібліотек і, як і з будь-якою іншою альтернативою Android Studio, ви втрачаєте підтримку Google та розширені вбудовані функції.

Eclipse

До появи Android Studio, як основний інструмент для розробки Android-додатків, розробники використовували Eclipse . Цей IDE підтримує кілька різних мов програмування, зокрема Java з Android SDK. На відміну від Android Studio, Eclipse не пропонує вбудовану підтримку і потребує більш ретельного налаштування. На даний момент Google відключила офіційну підтримку, тому насправді немає жодних підстав використовувати Eclipse замість Android Studio. Я включив його в цей список, тому що він може бути корисним для тих, хто цікавиться історією IDE і вчиться створювати програми для Android. Так би мовити для того, щоб розширити світогляд.

GitHub

GitHub  - це онлайн-сервіс для хостингу та спільної розробки IT-проектів. Також він включає систему контролю версій. Це дуже зручно, якщо вам потрібно зробити резервну копіювашого проекту або ви шукаєте людей для спільної розробки, або зразок гарного коду, який змогли б використати як приклад для розробки власного проекту. Якщо ви новачок, то швидше за все завантажуватимете на свій комп'ютер код різних проектів, а потім переписуватимете його за своїм бажанням. Якщо ви коли-небудь працювали у команді над розробкою великого додатку, але ніколи не використовували GitHub - саме час це виправити!

Багато програмістів хочуть зайнятися розробкою програм під Android. Але мало хто уявляє, які кроки тут треба зробити. Ця добірка покликана допомогти новачкам в освоєнні Android-розробки.

Початок роботи

Початківцям у програмуваннідопоможе наша.

Для новачків в Android Google зробив гарне введення в Android на своєму сайті. Також є чудовий краудсорсинговий гід по Android. Крім того, є курс від Google до Udacity.

Якщо у вас виникають проблеми з Android, рекомендується спершу перевірити StackOverflow . Він створений для відповідей на технічні запитанняі навіть є.

Ви завжди можете знайти на нашому сайті.

FAQ

Я хочу почати розробляти під Android. З чого мені почати?

Перший і найважливіший кроку розробці під Android – це вивчення Java та XML. Як тільки ви більш-менш познайомитеся і з тим, і з іншим, вивчіть офіційну Документацію Android і пройдіть кілька уроків, поки не відчуєте себе досить впевненим для створення власних проектів. Успіхів!

Чи потрібний мені Android-пристрій для розробки?

Ви можете писати програми без будь-якого Android-пристрою, використовуючи включений у постачання емулятор (або вдосконалений Genymotion). Однак для обліку апаратних вимог ніщо не замінить тестування на цьому пристрої.

Яку IDE краще використовувати?

  • Android Studio- Офіційно підтримувана IDE для розробки під Android. Саме вона використовується в сучасних посібниках та відео, у тому числі і від Google.
  • Eclipseбула основною IDE для розробки під Android протягом багатьох років, тому більшість застарілих уроків, ресурсів, відео та скріншотів зроблено на ній.
  • IntelliJ IDEAбув альтернативою Eclipse, але зараз розумніше почати з Android Studio. Android Studio – це відгалуження IntelliJ IDEA, так що ви отримаєте всі переваги плюс бонуси під Android.

Може мені варто забути про Java і почати вчити Kotlin?

Google тепер офіційно підтримує Kotlin як мову розробки під Android, але це не означає, що про підтримку Java можна забути. У найближчому майбутньому документація, інструменти, нові фічі платформи будуть підтримувати як Kotlin, так і Java. Хоча Kotlin - молодша мова з деякими приємними особливостями, ви все ще можете створювати відмінні програми Java. Вибір залежить тільки від вас, але якщо вам не принципово або ви новачок, то можливо краще зробити вибір на користь Kotlin.

Ресурси

Тут представлені основні ресурси з розробки під Android на англійською. Це далеко не повний списокале достатній для старту.

Офіційні ресурси Android

Дизайн

  • Краси для Android – це натхнення для створення графічних інтерфейсів під Android.

Розсилки

  • Android Weekly – чудове розсилання, що допомагає бути в курсі останніх розробок Android.

Колекції бібліотек

Інструменти

  • Genymotion – вкрай корисний та функціональний емулятор.
  • Android Asset Studio – чудова колекція інструментів для створення/редагування іконок, зображень тощо.
  • Codota Plug-in для Android Studio - чудові приклади коду прямо в Android Studio.

Приклади open source додатків

Ідеї ​​для додатків

Отже, ви маєте ідею для додатка… Люди щодня про це пишуть. Але перед тим, як просити допомоги в реалізації проекту, потрібно відповісти на такі ключові питання:

Який мій бюджет?

Якщо ви налаштовані серйозно та хочете випустити свій продукт, ви повинні подумати про свій бюджет. Навіть у разі простого додатку потрібно подумати про кілька тисяч доларів. Хоча б.

Яка маркетингова стратегія?

Ви збираєтеся використовувати звичайне сарафанне радіо чи готові платити за популярність?

Який список завдань даного проекту?

А також які є обмеження? Скільки мені потрібно розробників?

Звідки приходитимуть/де зберігатимуться дані?

А як вони будуть використовуватися? Чи розроблено у мене відповідну політику приватності?

Чи є ціль заробити грошей?

Якщо так, як ви зібралися її досягати? Через рекламу, IAP , підписки, платні програми? Все вищезазначене?

Як ви платитимете вашим розробникам?

Чи є у вас капітал або ви зібралися платити їм після того, як програма почнемо приносити дохід? Часто незалежні контрактники вимагають повної вартості авансом. Більшості розробників нецікаво поділ доходів, крім випадків, коли вони вкладаються у додаток.

Яким буде метод тестування?

На який тип пристрою ви збираєтесь встановлювати його? Як багато ітерацій вам потрібно? Яких людей ви хочете залучити?

Як швидко ви хочете опублікувати програму в магазині?

Це однозначно вплине кінцевий дохід.

Чи вимагатимете або пропонуватимете реєстрацію/інтеграцію з соціальними мережами?

Продумайте реалізацію цієї функціональності.

Яка ваша цільова аудиторія?

Це нішеве додаток чи може бути поширене всюди?

Чи реалізовано вже мою ідею?

Якщо так, як я можу покращити її або що в ній немає?

Що робити з ідеями для програм, якщо ви не розробник?

Ви, можливо, шукаєте розробників у вашу команду для реалізації програми. Якщо у вас є гроші і ви можете заплатити розробнику або фірмі, все просто і зрозуміло. Далі ми поговоримо про те, що робити, якщо у вас недостатньо грошей, щоби платити комусь.

Усвідомте, що ваша ідея може бути не унікальною, а розробка вимагає значних зусиль.

  • Намалюйте дизайнвашої програми (зовнішній вигляд та функціональність). Він може бути грубим та намальований на папері. Але він має бути досить конкретним, а не розмитим.
  • Складіть список своїх навичок,пов'язаних із ідеєю.
  • Складіть список того, що ви вкладетеу свою ідею.

Зрозумійте, що технологія вимагає значних зусиль. Уявіть, що розробник працює повний робочий день (8 годин) протягом 2 місяців, щоб створити додаток. І ви також працюєте повний робочий день. Що ви робите у цей час?Якщо ваша робота, за вашими уявленнями, закінчується раніше, потрібно переглянути ідею. У цьому сценарії розробник виконує більшу частину роботи, і ви, чесно кажучи, марні. Те, що ви можете дати після того, як програма закінчена, не має особливого значення і не буде мотивувати розробника закінчувати продукт.

Перегляд вашої ідеї

Якщо розробник виконує більше роботи, аніж ви, потрібно переглянути ідею, щоб розподілити роботу більш справедливо. Це дасть переваги від спільної праці. Подивіться на ваш список навичок та подумайте, як їх можна застосувати. Це нормально, якщо програма буде відрізнятися від початкового задуму. Переглядайте його доти, доки кількість вашої роботи та роботи розробника, як мінімум, не зрівняються.

  • Розподіляйте роботу настільки справедливо, наскільки це можливо.
  • Фокусуйтеся насамперед на ваших навичках.
  • Ваше завантаження має приблизно дорівнювати 2 місяцям повноцінної роботи. Для простих додатківзавантаження, звичайно, може бути меншим. Ви можете попросити спільноту (наприклад,