Как самостоятельно создать программу на андроид. Как создать программу для смартфона за полчаса

Операционная система Android на сегодня является одной из самых востребованных мобильных платформ во всем мире. Практически каждый обладатель Android смартфона хотел бы получить уникальное приложение, которое подойдет в конкретном случае именно ему, но не всегда можно найти такое приложение. В этой статье мы поговорим с вами о том, как сделать приложение для Андроид самому с помощью бесплатных способов.

Из-за стремительного развития платформы Андроид, некоторые функции описанных программ могут меняться, поэтому для уточнения каких либо деталей пишите в комментариях. Последняя редакция — 20.01.2018.

Естественно, прогресс не стоит на месте и с развитием ОС Android появляется все больше возможностей для создания разного рода приложений, которые подходят к ней. И если еще недавно, его мог создать только специалист который обучился этому в институте, то теперь этим может заняться любой владелец телефона или планшета Андроид в онлайн режиме.

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

Описанные ниже инструменты, позволят создать собственное приложение в несколько этапов.

Некоторые из представленных программ позволяют не просто сделать, но и сразу монетизировать его. Также любое из созданных приложений можно будет разместить в системе Google Play.

Четыре способа как сделать приложение для Андроид самому

Ниже вы найдете четыре «инструмента», которые позволят вам создать такое приложение быстро и без особых знаний. Такие программы напоминают конструкторы, которые по блокам позволяют создать все что вам нужно, хорошая аналогия со сборкой всем знакомого конструктора LEGO.

Все программы, представленные здесь подбирались по таким критериям:

  • Удобное использование . Естественно пользоваться данными предложениями будет не обученные специалисты, а обычные пользователи, такие как мы с вами. Именно поэтому, приложение должно быть очень удобным, функциональным, и простым в ознакомлении.
  • Интуитивно простой интерфейс . Если говорить логически, то данный пункт как будто вытекает из предыдущего, что значит программа должна быть не просто удобной, но и интуитивно понятной.
  • Большой функционал . Большое разнообразие способов создания приложения это несомненный плюс. Хотя все представленные программы, в среднем, имеют одни и те же функции, за исключением некоторых мелочей.

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

App Builder — простой инструмент для создания приложений

Этот вариант является хорошим способом для создания собственных приложений быстро. Без сомнения, радует и то, что его можно использовать не вкладывая ни копейки, а значит бесплатно . Хотя тут, есть и минусы, как минимум в том, что он полностью на английском языке (после обновления в декабре 2017, добавили русский язык).

Возможности программы

  • Представлен огромный выбор шаблонов для того, чтобы создать приложение. Если у вас в задумке какое-то простое приложение, то эта программа с легкостью поможет подобрать шаблон;
  • После создания приложения, можно будет следить за его статистикой;
  • Если вы создадите приложение и оно пройдет проверку, то его можно просто и довольно понятно разместить в магазине Google Play.

AppsGeyser — сайт для создания качественных приложений на Андроид своими силами

Официальный сайт — https://www.appsgeyser.com

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

Преимущества AppsGeyser

  • Приложение пишется довольно быстро, буквально в пару кликов;
  • Оно позволяет создать простые игры для Android, ведь согласитесь, что не каждый инструмент сегодня может это сделать;
  • После того как приложение будет готово, его с легкостью можно будет разместить в магазине Гугл Плей;
  • Кроме этого, можно монетизировать вашу программу непосредственно через сервис AppsGeyser. Это полезная функция, ведь проявив свою фантазию, вы можете еще и заработать на этом;
  • Создавайте, редактируйте, публикуйте приложение в онлайн режиме в личном кабинете (чтобы сохранились результаты).

IbuildApp — мощный движок для разработки собственных проектов

Этот инструмент заслуживает действительно досконального рассмотрения. Как мы обсуждали выше, вам не нужно знать языка программирования, чтобы создавать Андроид приложения. Платформа разработки настолько проста, что создать свое собственное приложение будет очень просто. Процесс займет всего несколько минут, зато результат будет очевиден.

Сайт IbuildApp имеет как платные тарифы (разработка индивидуального приложения, с дальнейшим развитием) так и бесплатные шаблоны, которых очень много.

Русский официальный сайт — https://russia.ibuildapp.com

Давайте посмотрим, на что оно способно:

  • Огромный архив тем на самые разные тематики: это могут быть рестораны, кафе, спортивные занятия, а также много других тем, позволяющих подобрать все что угодно. От вас потребуется только подобрать что-то конкретное, а далее отредактировать его под свои нужды;
  • Также в нем есть встроенные способы продвижения созданного приложения. Программа не просто помогает быстро создать приложение, но и раскручивает его. В других случаях этот процесс занимает очень много времени;
  • Кроме того, вы сможете подключить приложение к рекламной сети, а значит будете зарабатывать на нем деньги.

AppsMakerstore — платформа создания простых программ

Официальный сайт — https://appsmakerstore.com

Четвертая крутая платформа которая разработана для создания Android приложений. Наверно одним из самых главных преимуществ является то, что с помощью сайта AppsMakerStore можно создавать программы которые будут мультиплатформенными (к примеру, на Андроид, iOS и Windows Phone)

Давайте рассмотрим преимущества платформы:

  • Работа с конструктором происходит в режиме онлайн;
  • Возможность бесплатной регистрации;
  • Написание приложений с помощью готовых макетов, при этом огромный выбор шаблонов по теме обеспечен каждому пользователю.

Видео инструкция по созданию приложения с помощью APK Creator


Вот и все, надеемся, что вы нашли то, что искали и остались довольны нашей подборкой. Этот набор инструментов, станет чем-то особенным для начинающего программиста и позволит разобраться с тонкостями создания простейших приложений бесплатно.

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

Вам нравится разработка мобильных приложений для бизнеса, блога, продукта или услуги, или вы просто ищите новый источник заработка? Думаете, как это осуществить и просчитывать будущие расходы? На самом деле воплотить в жизнь эту затею не так сложно и не так дорого, как может показаться на первый взгляд. Необходимо лишь достаточно хорошо представить, чего именно вы ожидаете от приложения для мобильного телефона или планшета и определить, какими способами достичь поставленных целей.

ПОДГОТОВИТЕЛЬНЫЙ ЭТАП

Перед тем как создать мобильное приложение, стоит определиться в следующих моментах:

  • Есть ли у меня конкретное видение того, что будет представлять собой готовый продукт и каким будет его функционал?
  • Какие задачи программа призвана решать и какова будет польза для конкретного пользователя?
  • На каких платформах будет работать готовый программный продукт (iOS, Android, Windows Phone)?
  • Потребуется ли ежедневный контроль за его функционированием?
  • Какую сумму я готов потратить?
  • Буду ли я создавать приложение самостоятельно или же обращусь к разработчикам-профессионалам.

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

СПОСОБЫ И СТОИМОСТЬ СОЗДАНИЯ ПРИЛОЖЕНИЯ

В создании приложений для мобильных устройств есть два пути. Первый подразумевает самостоятельное формирование программ для электронных устройств на основе Андроид или IOS по шаблонному типу при помощи специальных сайтов-конструкторов. Второй путь, более затратный, однако в результате позволяющий получить серьезные и функциональные продукты, - обратиться за помощью к частным лицам или компаниям, занимающимся написанием программного обеспечения. Второй вариант подходит, если речь идет о создании серьезных программных продуктов с конкретными характеристиками, которые выходят за пределы готовых наборов, доступных на сайтах-конструкторах. Следует учитывать также, что профессиональная разработка для iOS или Android требует значительных расходов. Какова стоимость создания приложения для платформ Android и IOS на российском рынке? Диапазон цен достаточно широкий - от нескольких сотен до десятков тысяч долларов - все зависит типа программного обеспечения и его функционала. Однако такие серьезные вложения с лихвой окупаются в перспективе. При планировании конечной стоимости также стоит учесть и расходы на размещения нового продукта в AppStore и Android Market. Если Вы ограничены небольшим бюджетом и у Вас совсем нет времени, тогда можно попробовать сконструировать приложение для электронных устройств самостоятельно. Для этого не нужно быть программистом. О том как это легко сделать, читайте далее.

КАК СОЗДАТЬ ПРИЛОЖЕНИЕ БЕСПЛАТНО

На сегодняшний день в сети доступно достаточно отечественных и зарубежных платформ, которые позволяют самостоятельно условно бесплатно сконструировать приложение по готовому типу. На сайтах-конструкторах размещены сотни готовых вариантов аппликаций, рассортированных по различным категориям: малый бизнес, образование, развлечения, спорт, блоги и тому подобное. На таких ресурсах бесплатно создаются программы со стандартным и ограниченным набором функций. Ограничения касаются количества установок и просмотров Вашего приложения, количества позиций в каталоге, возможности публикации в магазинах, наличия системы приема платежей, присутствия сторонней рекламы и возможности доработки функционала под Ваши нужды. Для снятия ограничений на сайтах можно выбрать определенный пакет с фиксированной месячной платой, размер которой определяется в зависимости от количества включенных опций. Примеры сайтов-конструкторов условно-бесплатных мобильных приложений для Андроид, iPhone, iPad.

  1. Appsgeyser.com (appsgeyser.ru - русскоязычный вариант).

А теперь рассмотрим, как за несколько минут осуществляется разработка мобильного приложения на примере сайта ibuildapp. Мы выбрали именно эту площадку, так как она очень проста и понятна в использовании. Кстати, ресурс iBuidApp имеет и русскоязычную версию, что еще больше облегчает пользование конструктором. Перед началом работы регистрируемся на сайте. Далее на главной страничке кликаем вкладку “Создать” и выбираем подходящий нам шаблон.

ВЫБОР ШАБЛОНА И КАТЕГОРИИ

Данная площадка предлагает достаточно большой выбор стандартных вариантов, ознакомиться с которыми можно в каталоге категорий в левом меню странички сайта. Для примера мы выбрали категорию “Фотография” и шаблон “Фотостудия”. После выбора дизайна и соответствующей категории, начинаем редактирование пунктов меню.

РЕДАКТИРОВАНИЕ КОНТЕНТА

Административная панель конструктора открывает широкие возможности для редактирования элементов меню. Можно изменить фон, добавить логотип, настроить навигацию главного и нижнего меню на экране электронного устройства, редактировать содержимое внутренних страниц. Кстати, в правой части экрана можно увидеть, как внесенные изменения будут выглядеть на экране электронного устройства. Конструктор позволяет также протестировать ваше приложение на планшете или смартфоне. Также готовую программу можно публиковать в Appstore или в Google Play, однако эта функция доступна только для платных версий. Сайт предлагает 3 платных пакета стоимостью 490 руб., 2400 руб., 3700 руб. в месяц.

ПЛАТНЫЕ ПАКЕТЫ

Если вас не устраивает внешний вид доступных на сайте шаблонов, вы можете создать собственный дизайн, нажав в учетной записи вкладку “Мои шаблоны”. Возможности индивидуального конструктора достаточно ограничены, они позволяют наделить программный продукт только самыми необходимыми элементами.
Теперь Ваша очередь взяться за создание приложений и установить его на свой смартфон. Попробуйте, это достаточно просто!

Без финансовых вложений и специальных знаний.

Вот простейшая инструкция, как создать элементарное iOS-приложение и испытать его на своем устройстве. Отталкиваясь от нее вы сможете дальше углубиться в тему и создавать реально полезные программы.

Примечание для пользователей Windows: чтобы создавать приложения для iOS вам необходимо установить OS X на виртуальной машине (VirtualBox, VMware). Это процесс отнюдь не прост и для его осуществления требуется отдельная инструкция.

1. Идем в App Store и устанавливаем среду разработки XCode :

Если у вас уже стоит XCode, то необходимо обновить его.

2. Запускаем xCode и выбираем пункт меню File -> New -> Project :

3. Выбираем платформу и тип приложения:

4. Указываем информацию о проекте. Обратите внимание, что мы выбрали тип приложения «Universal»:

5. Нажимаем на кнопку New Folder и указываем имя папки, в которой будем хранить файлы приложения:

6. Снимаем галочку с чекбокса Create Git Repository и нажимаем кнопку Create . В результате вы должны попасть на стартовый экран работы над приложением:

7. Нажимаем на пункт Main.storyboard в правом меню, перетаскиваем на основное поле элемент Label и добавляем в него текст Hello_world :

8. Теперь надо сделать иконку для приложения. Подбираем картинку и загружаем ее на mapappicon.com :

9. Ждем когда веб-приложение закончит работу и указываем свой адрес электронной почты для получения архива с иконками:

10. Возвращаемся в XCode и в левом меню выбираем раздел Assets.xassets :

11. Открываем архив из почты и перетаскиваем иконки оттуда на рабочее пространство XCode:

12. Выбираем один из симуляторов устройств, нажимаем на кнопку запуска приложения (черный треугольник) и включаем на своем Mac Developer Mode :

13. Повторяем попытку запуска. Ждем, когда на симуляторе загрузится iOS:

14. Убеждаемся, что приложение работает:

Смотрим готовое приложение на устройстве

Теперь можно посмотреть, как работает приложение на устройстве. Перед выполнением инструкции убедитесь, что у вас свежие версии XCode и iOS.

1. Идем в xCode -> Preferencies -> Accounts и добавляем свой Apple ID:

2. Подсоединяем iOS-устройство к компьютеру:

3. Выбираем нужное устройство в списке и нажимаем на кнопку запуска. Ждем некоторое время.

4. Если вылезло сообщение о проблемах с безопасностью, то на iOS-устройстве идем в Настройки -> Основные -> Управление устройством и разрешаем запуск приложений от разработчика с вашим Apple ID:

5. Идем на рабочий стол и находим иконку нового приложения:

6. Запускаем:

7. Отсоединяем устройство от компа. Теперь приложением можно пользоваться.

Что делать, если хочешь больше?

С помощью метода научного тыка и Google можно расширить вышеприведенную последовательность действий и создать более функциональное приложение. Но использовать его можно будет только на своих устройствах.

Ведь Apple предъявляет очень высокие требования к приложениям. App Store Review Guidelines включает в себя 29 пунктов и более сотни подпунктов. Для того, чтобы приложение им соответствовало и было принято для публикации в магазине, разработчику требуется большой объем технических знаний.

Если хотите создавать качественные приложения для iOS предназначенные для массового использования,

Как создать мобильное приложение в Android Studio

Android Studio - интегрированная среда разработки (IDE) на базе IntelliJ IDEA , которую Google называет официальной IDE для приложений Android.

В этом руководстве описана разработка приложений для android :

  • Навигация между файлами с помощью проводника
  • Установка файла AndroidManifest.xml
  • Импорт файлов в проект
  • Расширенный редактор макетов с функцией динамического превью
  • Использование Logcat и Android Monitor для отладки приложений

Начало работы в Android Studio

Запустите Android Studio, в окне Android Studio Setup Wizard выберите Start a new Android Studio project (начать новый проект).

В окне Create New Project выберите Application Name (название приложения) как Fortune ball («Шар фортуны»), введите домен компании; в поле Project location выберите место в котором приложение будет сохранено. Кликните Next .

Перед вами окно Target Android Devices . Выберите Phone and Tablet . В поле Minimum SDK укажите API 15 . Нажмите Next .

В окне Add an activity to Mobile выберите Basic Activity . Оцените все опции, в этом окне представлен обзор доступных макетов.

Кликните Next .

В окне Customize the Activity , скриншот которого размещен ниже, вы сможете изменить Activity Name (название активности), Layout Name (название макета), Title (общее название) и Menu Resource Name (название меню ресурсов). Оставьте значения по умолчанию и кликните Finish .

Через несколько секунд появится следующее окно:

На вашем устройстве или эмуляторе высветится такое же окно. Эмулятор функционирует как устройство, загрузка займет определенное время.

Это уже приложение. Ему многого не хватает, но сейчас уже можно переходить к следующему шагу.

Структура проекта и файла

Окно показывает файлы проекта.

В выпадающем меню (скриншот ниже) есть несколько фильтров для файлов. Основные - Project и Android.

Фильтр Project покажет все модули приложения - в каждом проекте присутствует как минимум один модуль. Среди модулей других типов есть модули из библиотек сторонних разработчиков, или модули других приложений Android (такие как приложения для Android Wear, Android TV). У каждого из модулей имеется свой набор характеристик, в т. ч. файл gradle, ресурсы и исходные файлы (java-файлы).

Примечание. Если проект не открыт, кликните вкладку Project на левой стороне панели, как показано на скриншоте. По умолчанию установлен фильтр Android, который группирует файлы по определенному типу. На верхнем уровне вы увидите следующие папки:

  • manifests
  • Gradle Scripts

В последующих разделах подробно описаны все эти папки, начиная с manifests.

Обзор AndroidManifest.xml

У каждого приложения под Android есть файл AndroidManifest.xml, который находится в папке manifests. Этот XML-файл сообщает вашей системе о требованиях приложения. Присутствие этого файла обязательно, т. к. именно он позволяет системе Android создать приложение.

Откройте папку manifests и AndroidManifest.xml. Двойной клик откроет файл.

Теги manifest и application нужны для manifest, появляются только один раз.

Каждый тег также определяет набор атрибутов, наряду с названием элемента. К примеру, некоторые атрибуты в application могут быть такими:

android:icon, android:label и android:theme

Среди прочего в manifest может появиться:

  • uses-permission: запрашивает специальное разрешение, которое выдается приложению для корректной работы. К примеру, приложение должно запрашивать разрешение у пользователя, чтобы получить доступ к сети - в случае, если вы добавите разрешение android.permission.INTERNET.
  • activity: сообщает об активности, которая частично отвечает за визуальный UI и логику. Любая активность, которая предусмотрена в приложении, должна добавляться в manifest - неотмеченную активность система не заметит, и она не будет отображаться в приложении.
  • service: добавляет сервис, который вы собираетесь использовать, чтобы реализовать продолжительные операции или расширенные коммуникации API с другими приложениями. Примером в данном случае может служить сетевой вызов, с помощью которого приложение получает данные. В отличие от активностей, у сервисов нет пользовательских интерфейсов.
  • receiver: благодаря приемнику широковещательных сообщений приложение получает сигналы о системных сообщениях или сообщениях других приложений, даже когда другие компоненты приложения не запущены. Пример такой ситуации - батарея с низким уровнем заряда и уведомление об этом операционной системы.

Полный список тегов можно найти в manifest-файле на сайте Android Developer.

Настройки файла Manifest

В activity добавьте следующий атрибут:

android:screenOrientation=”portrait”. чтобы ограничить экран только портретным режимом. Если этого не сделать, экран, в зависимости от расположения устройства, будет либо в ландшафтном, либо в портретном режиме. После добавления атрибута файл manifest будет выглядеть как на скриншоте.

Создайте и запустите приложение. Если вы тестируете на своем устройстве, переверните его, удостоверьтесь, что экран не перемещается в ландшафтный режим, если вы ограничили эту возможность в файле AndroidManifest.

Обзор Gradle

Перейдем к Gradle. Gradle превращает Android-проект в инсталируемый APK, который можно устанавливать на устройства. Файл build.gradle присутствует в Gradle scripts, на двух уровнях: модульном и проектном.

Откройте файл build.gradle (Module:app). Вы увидите установку gradle по умолчанию:

apply plugin: "com.android.application" android {compileSdkVersion 25buildToolsVersion "25.0.2"defaultConfig {applicationId "com.raywenderlich.fortuneball"minSdkVersion 15targetSdkVersion 25versionCode 1versionName "1.0"testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"}buildTypes {release {minifyEnabled falseproguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"}}} dependencies {compile fileTree(dir: "libs", include: ["*.jar"])androidTestCompile("com.android.support.test.espresso:espresso-core:2.2.2", {exclude group: "com.android.support", module: "support-annotations"})compile "com.android.support:appcompat-v7:25.1.0"compile "com.android.support:design:25.1.0"testCompile "junit:junit:4.12"}

Разберем основные компоненты:

  • apply plugin: ‘com.android.application’ применяет плагин Android на родительском уровне и обеспечивает доступность задач верхнего уровня, которые нужны для создания приложения.
  • Рядом с разделом android{…} находятся опции настроек, такие как targetSdkVersion. Целевой SDK для вашего приложения должен располагаться на новейшем уровне API. Еще один важный компонент - minSDKVersion (определяет минимальную версию SDK, которая должна быть установлена на устройстве, чтобы приложение можно было запустить). К примеру, если версия SDK 14, тогда приложение будет невозможно запустить на этом устройстве, поскольку в данном конкретном случае минимальная поддерживаемая версия 15.
  • Последний компонент - dependencies{…}. Необходимо отметить compile ‘com.android.support:appcompat-v7:VERSION’ и compile ‘com.android.support:design:VERSION’. Они обеспечивают поддержку и совместимость особенностей новых и старых API.

Кроме библиотек совместимости Android, вы можете добавить библиотеки сторонних разработчиков в компонент dependencies{…} Библиотека анимаций, например, содержит эффекты пользовательского интерфейса. Найдите dependencies, затем добавьте вниз две следующие линии:

dependencies { ... compile "com.daimajia.easing:library:2.0@aar"compile "com.daimajia.androidanimations:library:2.2@aar"}

Здесь можно добавить dependencies сторонних разработчиков. Библиотеки автоматически загружаются и интегрируются в Android Studio. Кликните Sync Now, чтобы интегрировать эти зависимости в свое приложение.

Синхронизация длится несколько секунд. Обновления Gradle появляются во вкладке Messages нижней панели.

Это все настройки, которые вам пока будут нужны в Gradle. Такие манипуляции добавят анимацию в приложении.

Импорт файлов

В разработке приложения под Android важна интеграция с другими ресурсами: изображения, кастомные шрифты, звуки, видео и пр. Эти ресурсы импортируются в Android Studio и помещаются в соответствующие папки, что позволяет операционной системе подбирать корректные ресурсы для приложения. Для нашего приложения Fortune Ball понадобится импорт изображений в папки drawable. В этих папках могут содержаться изображения или специальные файлы XML drawables (т. е. вы можете рисовать формы с помощью XML-кода и использовать их в своих макетах).

В Android Studio перейдите из Android в Project

Откройте папку res (app > src > main). Клик правой кнопки мыши по папке res, выберите New > Android resource directory.

Появится окно под названием New Resource Directory.

Из выпадающего списка Resource type выберите опцию drawable. В списке Available qualifiers выберите Density, затем кликните кнопку, которая выделена на скриншоте.

В следующем окне выберите XX-High Density из списка Density. Кликните OK.

Повторите все, чтобы создать папки drawable-xhdpi, drawable-hdpi и drawable-mdpi. Выберите X-High, high (высокую) и medium (среднюю) плотность соответственно из списка Density.

Каждая папка, у которой есть определитель плотности (i.e. xxhdpi, xhdpi, hdpi), содержит изображения, которые соотносятся с определенной плотностью или разрешением. К примеру, папка drawable-xxhdpi содержит изображение высокой плотности, это означает, что Android-устройство с экраном высокого разрешения извлечет изображение из этой папки. Изображение будет хорошо смотреться на всех устройствах Android, независимо от качества экрана. Больше информации о плотности экранов содержится в документации Android.

Создав все «рисованные» папки, вы можете вернуться к нераспакованному контенту в папке и скопировать (cmd + C) изображение из каждой папки и поместить (cmd + V) в соответствующую папку Android Studio.

Поместив файлы, вы увидите окно Copy. Выберите OK.

XML View и Dynamic Layout Previews

Создание макета, с которым пользователи могут взаимодействовать, - важная часть процесса. В Android Studio это можно сделать в редакторе макета. Откройте content_main.xml из res/layout. Во вкладке Design вы можете переносить элементы интерфейса (кнопки, текстовые поля).

Справа от Design есть вкладка Text, которая позволяет редактировать XML непосредственно в макете.

Перед созданием внешнего вида, необходимо определить некоторые значения. Откройте strings.xml во вкладке res/values и добавьте следующее:

Suggest the question, which you can answer “yes” or “no”, then click on the magic ball.

strings.xml содержит все строки, которые появляются в приложении. Разделение этих строк в отдельные файлы упрощает интернационализацию, т.к. нужен только файл строк для каждого языка, который требуется в приложении. Даже если вы не собираетесь переводить приложение на другие языки, использовать файл строк всегда рекомендуется.

Откройте dimens.xml в res/values и добавьте следующее:

15sp20sp

dimens.xml содержит размерные величины, предельные интервалы для макетов, размера текста и пр. Рекомендуется сохранять эти данные в файле, чтобы их можно было использовать для создания макетов в дальнейшем.

Вернитесь в content_main.xml и замените все содержимое файла следующим кодом:

Этот довольно большой код создает макет приложения под названием FortuneBall. На верхнем уровне вы добавили RelativeLayout (относительная разметка определяет позицию дочерних компонентов относительно родительского компонента). RelativeLayout можно растянуть, подогнать под размер родительского компонента.

В относительной разметке добавляются две части текста, изображение и кнопка. Все эти детали будут видны в порядке добавления. Их содержимое можно будет прочитать в strings.xml (текст) и в drawable (изображения).

Обновляя content_main.xml, обратите внимание на окно Preview обновляет UI:

Примечание: если не видно окно предпросмотра, во вкладке Text кликните на кнопку Preview на панели редактора разметки справа.

Создайте и запустите.

И вот вы создали макет приложения. Но на данном этапе это только красивое изображение - клик по кнопке ни к чему не приведет.

Объединяем Activity и View

Вы можете использовать java-файлы, размещенные в app / src / main / java чтобы установить логические связи в приложении.

Откройте MainActivity.java и добавьте эти данные под уже существующие:

Import java.util.Random;import android.view.View;import android.widget.Button;import android.widget.ImageView;import android.widget.TextView; import com.daimajia.androidanimations.library.Techniques;import com.daimajia.androidanimations.library.YoYo;

Первые пять импортов указывают на соответствующие классы в вашем коде: Random, View, Button, ImageView и TextView. Следующие два импорта указывают на то, что вы будете использовать два класса из библиотек, в т.ч. build.gradle для анимаций. В MainActivity.java в класс MainActivity добавьте:

String fortuneList = {"Don’t count on it","Ask again later","You may rely on it","Without a doubt","Outlook not so good","It"s decidedly so","Signs point to yes","Yes definitely","Yes","My sources say NO"}; TextView mFortuneText;Button mGenerateFortuneButton;ImageView mFortuneBallImage;

В этом небольшом отрезке кода вы установили 4 переменных для активности. Первая - строки, которые определяют возможные состояния, другие три - элементы UI, которые вы создали в макете/разметке.

Теперь замените содержимое метода onCreate() следующими данными:

// 1:super.onCreate(savedInstanceState);// 2:setContentView(R.layout.activity_main);Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);setSupportActionBar(toolbar);// 3:mFortuneText = (TextView) findViewById(R.id.fortuneText);mFortuneBallImage = (ImageView) findViewById(R.id.fortunateImage);mGenerateFortuneButton = (Button) findViewById(R.id.fortuneButton); // 4:mGenerateFortuneButton.setOnClickListener(new View .OnClickListener() {@Overridepublic void onClick(View view) {// 5:int index = new Random ().nextInt(fortuneList.length);mFortuneText.setText(fortuneList);// 6:YoYo.with(Techniques.Swing).duration(500).playOn(mFortuneBallImage);}});

  • Проверьте, что активность готова (реализация суперкласса).
  • Укажите, что макет для данной активности представлен макетом, который вы создали ранее, проверьте панель инструментов.
  • Заполните значения трех переменных, которые вы создали прежде в компонентах views макета с помощью метода findViewById. Значение id то же, что и в макете XML.
  • Добавьте OnClickListener на кнопке. Это простой класс, который инкапсулирует (упаковывает) функциональность, которую, в свою очередь, вызывает нажатие кнопки.
  • Выберите произвольный вариант из набора fortuneList для данного приложения, и обновите текст fortune text, чтобы это показать.
  • Используйте библиотеку сторонних разработчиков, чтобы добавить зависимость в файл gradle, и таким образом добавить анимацию в приложение.

Уже почти готово. Но нужно убрать плавающую кнопку. Перейдите в res / layout и откройте activity_main.xml.

В этом файле макета содержится ссылка на content_main.xml, который вы прежде редактировали. Он по умолчанию определяет контент (тулбар и плавающая кнопка действия). Однако в данном конкретном приложении (Fortune Ball) плавающая кнопка не нужна. Поэтому уберите следующий блок кода из xml-файла:

Теперь в правом нижнем углу нет плавающей кнопки.

Задайте вопрос (What’s my fortune?) - нажмите кнопку. Проверьте работу приложения.

Android Monitor

В Android Studio содержится широкое множество инструментов. Откройте вкладку Android Monitor в нижней части окна Android Studio.

Здесь вы найдете множество опций для разработчика.

  • Камера и кнопка play слева позволяют делать скриншоты и записывать видео.
  • Увеличительное стекло открывает ряд дополнительных опций, например анализ памяти приложения.
  • Layout Inspector предоставляет визуальный интерфейс, который определяет, почему интерфейс приложения выглядит определенным образом.

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

Проверьте, что вы выбрали Show only selected application в правом верхнем углу, как было показано на скриншоте выше. Теперь будут видны только сообщения вашего приложения.

В MainActivity.java добавьте к списку импортов следующее:

Import android.util.Log;

В конце onCreate() в MainActivity.java добавьте следующую линию:

Log.v("FORTUNE APP TAG","onCreateCalled");

Log.v вызывает два параметра - тег и сообщение. В данном случае тег определен как “FORTUNE APP TAG”, а сообщение как “onCreateCalled”.

Запустите приложение, чтобы видеть сообщение лога на панели Logcat.

Отфильтруйте содержимое LogCat, впишите onCreateCalled в поисковую строку над консолью:

Затем удалите поисковый текст, чтобы увидеть снова все сообщения лога.

Еще одна полезная функция - logcat, это возможность просматривать сообщения об ошибке. Добавьте баг в свое вполне функциональное приложение, чтобы посмотреть, как все устроено.

Перейдите к MainActivity.java и измените следующую линию в onCreate():

//mFortuneText = (TextView) findViewById(R.id.fortuneText);

Запустите приложение. Кликните кнопку What’s My Fortune? Не работает!

Как бы вы исправили ошибку, если бы не знали о наличии бага? В этом поможет Logcat.

Перейдите к панели Logcat - она выглядит примерно так:

Здесь много красного текста. В данном случае проблема в линии 50 в файле MainActivity.java. LogCat превратил эту ссылку в гиперссылку синего цвета. Если ее нажать, можно узнать, в чем проблема.

Изменив mFortuneText = (TextView) findViewById(R.id.fortuneText), вы тем самым создали переменную, но не указали ее значение - отсюда исключение нулевого указателя. Вернитесь обратно и измените код, запустите приложение. В этот раз все работает гладко. Logcat - полезный инструмент для поиска ошибок.

Share this article:

Related Articles

Но сначала мы расскажем, почему пользователи выбирают именно , а не Oreo или Pie:

  • В сравнению с обычной версией Android Oreo, он быстрее
  • Он требует меньше памяти устройства
  • Он требует меньше оперативной памяти.

С причинами разобрались, переходим к принципам разработки приложений.

Проверяйте качество соединения

В целом, способность приложения запрашивать и предоставлять информацию зависит от качества интернет подключения. Тут мы не срываем никаких покровов. Поэтому перед загрузкой данных необходимо отслеживать статус интернет соединения.

Вы можете сделать это таким образом:

А так можно узнать статус интернет соединения, его качество, а также проверить подключено ли устройство к metered network:

Обратите внимание на количество и качество запросов. Чем хуже соединение, тем ниже должно быть разрешение медиаконтента.

Размер APK файла должен быть, как можно меньшим

Пользователи не всегда имеют возможность загружать приложения с большим размером APK-файла. А иногда и вовсе избегают громоздких приложений. Ведь все прекрасно понимают, что размер APK-файла влияет на время скачивания и загрузку памяти.

Старайтесь, чтобы размер APK-файла не превышал 10 mb. Ведь одним из лучших способов уменьшить размер вашего приложения является уменьшение числа задействованных ресурсов.

Теперь о том, как это сделать. Изменить количество и вес ресурсов в APK можно с помощью инструмента Lint. Lint это анализатор кода в Android Studio. Он находит (но не удаляет) ресурсы в папке res/, на которые нет ссылок в коде программы. Однако следует помнить, что Lint не сканирует папку assets/ .

В консоли Lint запускается с помощью команды:

Зависимости, которые вы добавляете в проект, могут содержать неиспользуемые ресурсы. Gradle же их автоматически удаляет, если вы используете shrinkResources в файле build.gradle вашего приложения. Для удаления неиспользуемого кода стоит применить ProGuard minifyEnabled. Для большей оптимизации кода вы можете также попробовать указать файл с правилами ‘proguard-android-optimize.txt’ вместо ‘proguard-android.txt’ :

Также вы можете переиспользовать ресурсы. Например, если вам необходимо два ресурса, отличающиеся только углом поворота. Возьмите только один из них и поверните на нужное количество градусов:

А еще вы можете уменьшить размер PNG ресурсов в папке res/drawable/, с помощью инструмента aapt:

Используйте векторные графические ресурсы, так как они значительно уменьшают размер графических ресурсов в APK. Однако помните, что большие векторные изображения требуют больше времени для отрисовки, поэтому обращайтесь к ним только для отображения небольших картинок.

Эффективное использование памяти

Для того чтобы приложение не упало по причине Out Of Memory, вы можете узнать какой размер heap для него доступен (memoryClass), а также является ли устройство с низким объемом RAM (1GB или меньше) (isLowRamDevice):

Узнать статус памяти можно с помощью:

Для контроля занимаемой памяти вы можете использовать Memory Profiling Tool in Android Studio. С помощью этого инструмента вы визуализируете происходящие процессы:

На рисунке мы видим, какой объем памяти занимают в приложении графические ресурсы (20.1 Mb). И, разумеется, хорошей практикой является использование изображений с низким разрешением.

Следующий момент. Очищайте память, когда графический интерфейс уходит с экрана или когда ее банально не хватает. Для этого переопределите метод onTrimMemory() интерфейса ComponentCallbacks2 и, в зависимости от типа события, вычищайте лишнее:

Метод onTrimMemory() вызывается, когда операционная система определила необходимость trim (обрезания) ненужной памяти одного из процессов. Например, когда процесс становится фоновым и для других фоновых процессов не хватает ресурсов.

Оптимизируйте использование батареи

Старайтесь ограничить операции, ведущие к быстрой разрядке устройства до тех пор, пока устройство не подключено к источнику питания. Вы можете узнать, когда устройство подключено к питанию и узнать уровень заряда батареи. Объявим в манифесте приложения BroadcastReciever:

Класс PowerReciever:

Также вы можете реагировать на уровень заряда батареи. Объявим в манифесте приложения:

Класс BatteryStateReciever:

Вы можете посмотреть, как приложение использует батарею с помощью Battery Historian:

Приложение должно быть быстрым и отзывчивым

Кроме того, отметим, что пользователь всегда нуждается в обратной связи – приложение должно отвечать на его действия. Что для этого нужно? При запуске приложения предоставляем placeholder или специальный экран загрузки. Таким образом, пользователь скоротает период ожидания. Мелочь, но это гораздо лучше, чем пялиться в пустой экран.

Это значит, что мы будем избегать пустых состояний и заполним экраны placeholder или изображениями. Однако не стоит забывать, что устройства с маленьким экраном имеют маленькие вычислительные ресурсы. И для увеличения производительности следует уменьшить использование объемных изображений и анимаций. Убедитесь, что частота обновления экрана 60 frames per second и используйте для этого средства профилирования Profile GPU Rendering.

Вывод

Выполнение рекомендаций, перечисленных в этой статье, позволяет создать приложение для Android Go, которое поможет пользователю сэкономить ресурсы (память, трафик, заряд батареи) и сделать опыт обращения с приложением приятным во всех смыслах.

Кроме того, наши советы способствуют повышению рейтинга приложения и удержанию аудитории. Ведь медленный и чересчур требовательный к ресурсам девайса продукт никому не нужен. Как правило, он удаляется после первого негативного опыта.