Android Studio: 10 траблів початківця розробника і їх рішення

  1. Зміст статті Починаючи освоювати розробку для будь-якої платформи, ти обов'язково відразу ж натрапиш...
  2. 2. Смартфон на повідку
  3. 3. Бібліотеки
  4. 4. Іконки і кліпарт
  5. 5. Краш-репорти
  6. Продовження доступно тільки учасникам
  7. Варіант 2. Відкрий один матеріал

Зміст статті

Починаючи освоювати розробку для будь-якої платформи, ти обов'язково відразу ж натрапиш на безліч з першого погляду непомітних підводних каменів. Більшість з них будуть пов'язані з самим процесом кодинга: нестикування в API, приховані функції, обмеження, особливий стиль програмування для платформи. Є й камені, що лежать трохи віддалік: тестування і автоматична оптимізація, створення клипарта і іконок, отримання автоматичних краш-репортів. Недосвідчені розробники для Android ризикують відбити про них обидві ноги.

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

1. Повільний емулятор

Отже, ти накидав своє перше додаток, і пора його запустити і перевірити на працездатність. Для цього в комплекті Android SDK є емулятор. Довгий час йому дорікали за повільність, але з випуском Android Studio 2.0 ситуація набагато покращилася - x86-версія емулятора отримала хардварний прискорення, так що тепер він працює швидше реальних пристроїв. До того ж у нього з'явився зручний графічний інтерфейс, за допомогою якого можна симулювати дзвінки, СМС, змінювати дані GPS і збої в мережі, тобто все, для чого раніше доводилося використовувати інструменти командного рядка.

Тому, якщо ти ще не оновився, настійно рекомендую це зробити, не кажучи вже про перехід з Eclipse. І обов'язково вибирати x86-версію емулятора в AVD manager, ARM-версія не підтримує хардварний прискорення.

Новий емулятор Android Studio 2.0

2. Смартфон на повідку

Другий етап - тестування на реальному пристрої. Тут все просто: підключаєш смартфон по USB, встановлюєш драйвери, включаєш режим налагодження в настройках для розробників, після чого девайс з'являється в списку доступних для установки програми (поруч з емулятором). Проблема тільки в тому, що в даному випадку пристрій необхідно тримати підключеним до ПК за допомогою кабелю, а якщо це твій основний смартфон, на який надходять дзвінки та повідомлення, то про зручність годі й казати.

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

  1. Встановлюємо WiFi ADB, запускаємо, включаємо мережевий режим з допомогою перемикача і запам'ятовуємо IP-адреса.
  2. Запускаємо Android Studio.
  3. Відкриваємо консоль, переходимо в каталог з встановленим SDK, далі в platform-tools і запускаємо наступну команду:

    $ Adb connect IP-адреса

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

  1. Підключаємо смартфон і встановлюємо драйвери.
  2. Включаємо режим налагодження в настройках для розробників.
  3. Відкриваємо консоль, переходимо в каталог SDK / platform-tools і запускаємо наступну команду:

    $ Adb tcpip 5555

  4. Підключаємося до смартфону по мережі:

    $ Adb connect IP-адреса

IP-адресу можна дізнатися через настройки: «Про телефоні (Про планшет) → Загальні відомості», пункт «IP-адреса».

3. Бібліотеки

Окей, твій накидали за півгодини огризок начебто працює, і настав час перетворити його в даний додаток з красивим інтерфейсом і віджетами для робочого столу. На цьому етапі тобі напевно знадобляться зовнішні бібліотеки, реалізують різні концепції інтерфейсу, патерни програмування і зв'язок із зовнішніми сервісами. І якщо з останніми все зрозуміло (потрібен SDK для Dropbox - відкриваєш портал для розробників і дотримуєшся інструкцій), то з іншими вже складніше. Де їх шукати і які бібліотеки краще?

Найбільш повний каталог бібліотек - це Android Arsenal . Там ти знайдеш практично все, що тобі потрібно. Доступні зручний пошук і сортування по рейтингу, для кожної бібліотеки є інструкція, як її підключити до свого проекту, в тому числі за допомогою стандартної для Android системи збирання Gradle: досить додати репозиторій в файл build.gradle проекту і вказати бібліотеку в списку залежностей.

Для кожної бібліотеки є інструкція по підключенню

Відмінний список must have бібліотек ти знайдеш на цій сторінці . Від себе додам, що на перших етапах варто відразу вивчити Dagger 2, RxJava і Retrofit. Ставши просунутим розробником, ти так чи інакше прийдеш до використання цих бібліотек.

4. Іконки і кліпарт

Нарешті, через дні або тижні у тебе починає вимальовуватися повноцінне додаток. Ось тільки ніякого графічного матеріалу немає до сих пір: іконка стандартна, в формі зеленого робота, замість клипарта - заглушки. Очевидно, без графіки сунутися в маркети безглуздо, однак і платити за іконку для свого першого додатка теж нерозумно. Що робити?

Насправді іконку можна згенерувати. Є чудовий веб-сервіс Android Asset Studio , За допомогою якого буквально за пару хвилин ти отримаєш гарну іконку у всіх можливих дозволах. В якості основи можна взяти підготовлену тобою картинку, просто написати текст або, що найкраще, вибрати з наданого сервісом клипарта. Також ти зможеш задати стиль іконки (кругла, квадратна, в стилі iOS ...), колір, налаштувати тіні та інші параметри. В результаті в твоєму розпорядженні з'явиться архів ic_launcher.zip, який необхідно розгорнути в каталог AndroidstudioProjects / ІМЯ_ПРІЛОЖЕНІЯ / app / src / main / res. Обов'язково створи веб-іконку, натиснувши на кнопку «Generate web icon». Вона тобі знадобиться.

Не забудь про веб-іконку

Той же сервіс дозволяє створити іконки для ActionBar'а і рядки стану . Принцип приблизно той же, скажу лише, що в рядку стану найкраще виглядають іконки з відступом від країв 15%.

Крім того, тобі знадобиться так звана Feature Image. Це спеціальна картинка, яку Play Market і інші магазини додатків використовують в якості плашки у верхній частині екрану (коли відкриваєш сторінку додатка на смартфоні). Її можна згенерувати за допомогою іншого сервісу . Для оформлення скріншотів можна використовувати офіційний сервіс від Google . Він створює навколо скриншота рамку смартфона.

5. Краш-репорти

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

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

Одна з найпопулярніших таких систем - Fabric , Однак я рекомендую подивитися в сторону Splunk MINT: він безкоштовний, простий і легко інтегрується в додаток (досить додати всього один рядок коду). Щоб почати ним користуватися, необхідно підключити до проекту SDK, зробити це можна за допомогою все того ж Gradle. Відкриваємо файл build.gradle (той, що відноситься до додатка, а не до всього проекту) і додаємо наступні рядки:

repositories {maven {url "https://mint.splunk.com/gradle/"}} dependencies {compile "com.splunk.mint:mint:5.0.0"}

Далі відкриваємо веб-сторінку Splunk MINT , Реєструємося і додаємо новий додаток через панель управління (add app):

Далі відкриваємо веб-сторінку   Splunk MINT   , Реєструємося і додаємо новий додаток через панель управління (add app):

Після цього Splunk MINT покаже тобі рядок коду, яку необхідно вставити в код:

Продовження доступно тільки учасникам

Варіант 1. Приєднайся до товариства «Xakep.ru», щоб читати всі матеріали на сайті

Членство в співтоваристві протягом зазначеного терміну відкриє тобі доступ до ВСІХ матеріалами «Хакера», збільшить особисту накопичувальну знижку і дозволить накопичувати професійний рейтинг Xakep Score! Детальніше

Варіант 2. Відкрий один матеріал

Зацікавила стаття, але немає можливості стати членом клубу «Xakep.ru»? Тоді цей варіант для тебе! Зверни увагу: цей спосіб підходить тільки для статей, опублікованих більше двох місяців тому.


Де їх шукати і які бібліотеки краще?
Що робити?
Що робити, просити друзів надсилати тобі лістинг logcat?
Ru»?