Android приложения
Содержание:
- Содержание проекта
- Зачем знать показатели приложений конкурентов
- Samsung Pay
- Как узнать, как ты записан у других
- Начало работы в Android Studio
- Аудитория мобильного приложения конкурента
- Обзор AndroidManifest.xml
- Скачивания и доходы мобильного приложения конкурента
- Установка игр с расширением apk
- Импорт файлов
- Apple Pay
- Android Pay
- Где конкуренты покупают трафик для своих мобильных приложений
- Как скачивать и слушать музыку на Android
- Закачка из компьютера
- Объединяем Activity и View
Содержание проекта
Вкладка Android содержит две основные папки: app и Gradle Scripts. Первая папка app является отдельным модулем для приложения и содержит все необходимые файлы приложения — код, ресурсы картинок и т.п. Вторая папка служит для различных настроек, управления проектом и многих других вещей.
Сейчас нас должна интересовать папка app. Раскройте её. В ней находятся три папки: manifest, java, res.
manifest
Папка manifest содержит единственный файл манифеста AndroidManifest.xml. В этом файле должны быть объявлены все активности, службы, приёмники и контент-провайдеры приложения. Также он должен содержать требуемые приложению разрешения. Например, если приложению требуется доступ к сети, это должно быть определено здесь. «AndroidManifest.xml» можно рассматривать, как описание для развертывания Android-приложения.
Более подробно о структуре манифеста читайте в дополнительной статье Файл AndroidManifest.xml
java
Папка java содержит три подпапки — рабочую и для тестов. Рабочая папка имеет название вашего пакета и содержит файлы классов. Сейчас там один класс MainActivity. Папки для тестов можете не трогать. Если вы знаете, как работают пакеты в Java, то можете создавать новые папки и подпапки.
res
Папка res содержит файлы ресурсов, разбитых на отдельные подпапки.
- drawable — в этих папках хранят графические ресурсы — картинки и xml-файлы, описывающие цвет и фигуры.
- layout — в данной папке содержатся xml-файлы, описывающие внешний вид форм и различных элементов форм. После создания проекта там уже имеется файл activity_main.xml, который отвечает за внешний вид главного окна приложения.
- mipmap — здесь хранят значки приложения под разные разрешения экрана
- values — тут размещаются строковые ресурсы, ресурсы цветов, тем, стилей и измерений, которые мы можем использовать в нашем проекте. Здесь вы можете видеть файлы colors.xml, strings.xml, styles.xml. В старых проектах был ещё файл dimens.xml, сейчас от него отказались
Со временем вы будет свободно ориентироваться в этих папках, пока не забивайте себе голову.
Зачем знать показатели приложений конкурентов
Я очень люблю изучать цифры разных приложений.
Во-первых, это интересно. Ты получаешь доступ к данным, которые все обычно скрывают.
Во-вторых, это очень хороший инструмент, чтобы оценить примерный размер интересующего тебя сегмента рынка и понять, на что ты можешь там рассчитывать.
В-третьих, подобный анализ часто позволяет найти много невидимых со стороны особенностей продуктов и механизом их дистрибуции. Например, оказывается, что у похожих продуктов на порядок отличается монетизация. Или какое-то приложение после очередного обновления взлетает по трафику или по деньгам.
Уделите несколько часов своего времени и изучите приложения ваших конкурентов с помощью сервисов, про которые я рассказал в этой статье. Я уверен, что вы найдете много интересного.
Samsung Pay
Этот сервис разработан и запущен в 2015 году специально для пользователей устройств «Самсунг» (по принципу айфонов). Работает на моделях, начиная с Samsung Galaxy Note5.
Топ-возможности приложения
Программа позволяет использовать такие функции, как:
- регистрация банковских карт;
- загрузка пакетов лояльности (подарочных, накопительных);
- оплата по транспортным картам;
- оплата в магазинах и других физических точках продажи товаров и предоставления услуг;
- оплата онлайн и в отдельных приложениях (со специальными пометками);
Преимущества и недостатки
Преимущества | Недостатки |
Функция эмуляции магнитной полоски даёт возможность работать с контактными и бесконтактными терминалами | Совместимость только с устройствами от «Самсунг» |
Защита данных тройной аутентификацией: графический ключ, отпечаток пальца, сканирование сетчатки глаза | Лимит на количество (не более 10) |
Участие в подарочно-накопительных акциях Samsung Rewards | Поддерживает не все банки и платёжные системы |
Токенизация (генерирование случайных ключей) через Samsung Knox | Ограниченное количество стран, где внедрена служба |
Заключение
Эта статья освещает различные варианты приложений для оплаты через NFC. Для каждого из них собран подробный технический паспорт: год выпуска, количество стран, в которых работает, совместимость с мобильными телефонами от разных производителей, ключевые возможности, преимущества и недостатки, источники, где можно скачать сервис.
Как узнать, как ты записан у других
Начну с того, что приложения, которые мы будем сегодня рассматривать, создавались исключительно в целях безопасности пользователей.
Представим такую ситуацию, когда вам звонит неизвестный номер и вы понятия не имеете, кто это. Если этот номер попал в базу данных программы данного характера, то вы легко сможете узнать имя. Возможно это поможет вычислить какого-то мошенника, как пример применения.
Вариантов программ, становится всё больше. Самым главным можно назвать GetContact, ну и более второстепенный, который только набирает популярность — NumBuster.
Как работает и как пользоваться GetContact?
После того, как вы узнали их названия, что устанавливать, можно и нужно сначала разобраться в принципе работы. Это весьма важная информация, которую вам необходимо знать перед установкой.
Как работает и использование. Суть достаточно простая — когда вы регистрируетесь в одной из этих программ, вы даете доступ к своей телефонной книге. Таким образом, вы пополняете базу данных номеров и имен. Теперь представляем, что вам звонит какой-то номер и когда происходит проверка по базе, то в результате вы просто видите весь список вариантов имен, как именно этот человек подписан у пользователей в телефонных книгах.
Если вы будете любопытны и введете в поиске свой номер, то результат будет таким же. И если вдруг, кто-то вас подписал не очень прилично, то программа вам не предоставляет, кто именно это сделал. Анонимность превыше всего.
Проблемы. Тем не менее, любопытство весьма злая штука и в некоторых странах, данные приложения были заблокированы. Вы только представьте, сколько проблем может принести данная возможность. Вроде всё конфиденциально, но данные могут сказать многое. Например, если это мужчина и он у кого-то подписан женским именем, то вполне возможно, что он изменяет. Еще один пример, кто-то может понять как вас зовут по вашему номеру и дальше найти место где вы работаете и так далее.
Я лично не регистрировался в нем и вам не советую, крепче будете спать. К счастью, как уверяют некоторые источники, GetContact дает уже только один вариант имени.
Если вдруг хотите перестраховаться и удалить свой номер из этой базы, то это легко организовать, ведь разработчики дают такую возможность.
Как удалить номер в GetContact?
На официальной страничке, разработчики дали возможность ввести свой номер и в течении 24 часов, он будет удален из базы данных. Вот ссылка — www.getcontact.com/en/unlist.
И прежде чем это делать, удалите сперва свой аккаунт, если регистрировались. Таким образом, вы сможете избежать проблем, которые точно никому не нужны.
Начало работы в 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.
Через несколько секунд появится следующее окно:
На вашем устройстве или эмуляторе высветится такое же окно. Эмулятор функционирует как устройство, загрузка займет определенное время.
Это уже приложение. Ему многого не хватает, но сейчас уже можно переходить к следующему шагу.
Аудитория мобильного приложения конкурента
Оценить аудиторию приложения конкурента — задача нетривиальная.
Когда-то давно существовал сервис Insights Onavo, который оценивал аудиторию приложений для US. Но после того, как Facebook купил их, сервис был закрыт.
Из доступных сейчас бесплатных способов узнать аудиторию другого приложения мне известен лишь один, да и тот не внушает большого доверия. В самом Facebook есть небольшой хак: введите название интересующего вас приложения в поисковую строку, и вот, что вы увидите:
Например, у Game of War более 1,5 миллиона скачиваний за месяц, а Facebook показывает лишь 100k+ MAU. У меня есть пара предположений, объясняющих столь низкие цифры. Возможно, тут все же отображается не MAU, а DAU. А может быть все дело в особенностях встраивания Facebook SDK в конкретных приложениях. Но это лишь догадки.
Обзор 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.
Скачивания и доходы мобильного приложения конкурента
У Sensor Tower есть премиальный продукт, который называется Store Intelligence. Как и аналогичный продукт от App Annie — он платный и дорогой. Но у Sensor Tower есть ограниченная бесплатная версия, которой в большинстве случаев бывает достаточно, чтобы получить ответы на основные вопросы.
С помощью Sensor Tower вы можете узнать количество скачиваний любого мобильного приложения за предыдущий месяц.
По этой ссылке, например, мы можем узнать, что в феврале 2016 года Telegram на iOS скачали 880k раз. А по этой ссылке, что за тот же период на Android Telegram скачали 1900k раз. Запомните эти цифры — они нам пригодятся немного позже.
Sensor Tower также позволяет оценивать доходы мобильных приложений от внутренних покупок.
Давайте посмотрим на MSQRD, который последний месяц занимал первые позиции в чартах App Store в большинстве стран.
Дело в том, что у сервисов вроде Sensor Tower и App Annie часто возникают проблемы с оценками скачиваний и доходов для приложений, которые занимают топовые места в чартах. Подобные сервисы оценивают скачивания и доходы на основе положения приложения в чартах магазинов, а для приложения на 1 месте предсказать количество скачиваний сложно, так как оно не ограничено сверху (ну разве что количеством девайсов, но это не всегда помогает).
Sensor Tower показывает 9,2 млн скачиваний MSQRD за февраль. За январь показывало 1 млн скачиваний. Цифры очень хорошо бьются с анонсами, которые были в прессе. Миллион пользователей спустя месяц, 10 миллионов пользователей спустя два.
По моим наблюдениям инструмент достаточно точный. Почти на всех проектах, где у меня была возможность сравнить реальные показатели и оценки Sensor Tower, попадание было хорошим.
Так что теперь вы можете весьма точно оценить количество скачиваний и доход мобильных приложений ваших конкурентов. Да и друзей тоже.
На всякий случай напомню, что оценить общее количество скачиваний приложения в Google Play можно прямо на его странице в маркете.
Установка игр с расширением apk
После того, как вы скачали игру на один из дисков ПК (можно скачивать и на флешку), ее необходимо перенести, или скопировать на карту памяти устройства в папку «Downloads».
Процедуру переноса можно осуществить при помощи USB-шнура, Wi-Fi, кард-ридера и прочих методов. Далее следуем инструкции:
Включить на телефоне функцию, позволяющую устанавливать посторонний софт. Необходимо зайти в Настройки и отметить галочкой в Приложениях пункт Неизвестные источники.
- Найти в меню карту памяти и папку «Downloads». Открыть.
- В папках ПК или на флешке найти нужный файл.
- Удерживая его кнопкой мыши, перетащить из папки на компьютере в «Downloads». Если вы используете флешку, процедура будет аналогичной.
- Найти на Андроид устройстве перемещенную игру или приложение.
- Тапнуть по ней.
- В новом меню находим пункт Установить или Следуем инструкции.
После этой процедуры ярлычок, ведущий к объекту, автоматически появится в основном меню гаджета. Теперь можно играть. Но такой легкой будет процедура, если у игры нет кеш файлов.
Импорт файлов
В разработке приложения под 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.
Apple Pay
Система была представлена на суд пользователей в 2014 году. За время существования софт значительно усовершенствовался, а количество айфонов со встроенным NFС-чипом значительно увеличилось. Работает на моделях с ОС 5/5s и выше. Доступен в 13 странах.
Топ-функционал системы
Наиболее важные функции:
- оплата в магазинах, приложениях, онлайн;
- регистрация платёжных, подарочных, скидочных карт;
- возможность пополнения банковских карт знакомых, родственников (пока есть только в США);
- оплата проезда в транспорте;
- работа с NFC метками (автоматизация устройства и других сопряжённых гаджетов);
- управление другим оборудованием (например, авто).
Достоинства и недостатки
Достоинства | Недостатки |
Плата за установку не взимается | Совместима только с устройствами на iOS |
Нет дополнительных комиссий за операции | Ограниченное количество банков-партнёров |
Интуитивный интерфейс (много языков) | Поддерживаются не все виды платёжных инструментов |
Безопасность: Touch ID, Face ID, пароль | Лимит на регистрацию (8–12) |
Совместимость с Apple Watch | Работает только на бесконтактных терминалах |
Расширенные возможности управления сопряжёнными гаджетами | |
Быстрота обработки операций | |
Не передаёт личные финансовые данные на терминалы |
Android Pay
Эта программа для оплаты телефоном с помощью NFC действует с 2015 года. Работает на всех устройствах с ОС Android KitKat версии 4.4 и выше, которые оснащены функцией NFC. К середине 2017 года заявлено 15 стран покрытия и 2 в проекте на конец года.
Ключевой функционал Android Pay
К наиболее популярным функциям относятся:
- эмуляция банковских карт (Visa, MasterCard);
- регистрация карт лояльности, бонусных систем, транспортных;
- осуществление бесконтактных платежей в супермаркетах, магазинах, на заправках, в кафе и ресторанах;
- возможность интернет-платежей (на сайтах, где есть специальная пометка).
Плюсы и минусы
Плюсы | Минусы |
Удобный интерфейс (в том числе и русскоязычный) | Ограниченное количество специальных бесконтактных терминалов |
Быстрый запуск и обработка платежа | Ограниченный список локальных банков-партнёров |
Доступен в магазине Google Play | Лимиты на суммы к оплате |
Отсутствие внутренних комиссий (бесплатная установка) | |
Не поддерживает рутированные или перепрошитые смартфоны (в целях безопасности) | |
Не передаёт на терминал платёжных реквизитов | |
Платёжные ключи генерируются сервером Google и кодируются специальными сервисами токенизации | |
Совместима со смарт-часами |
Скачать «Андроид Пэй» можно:
- с Google Play;
- на нашем сайте.
Где конкуренты покупают трафик для своих мобильных приложений
Этот вопрос должен особенно интересовать тех, кто продвигает свои приложения в рекламных сетях. Находить новые источники трафика и хитрые подходы для популярных рекламных сетей — единственный способ выживания на супер конкурентном мобильном рынке с ограниченным количеством источников трафика.
Если вам интересно — покупает ли вообще какое-то приложение себе пользователей или нет, то можно воспользоваться Sensor Tower. На этот раз их продуктом Ad Intelligence.
Он платный, но на странице приложения можно получить ограниченную информацию бесплатно. Вы можете узнать — крутится ли у приложения какая-то реклама в сетях, которые отслеживает Sensor Tower. И если да, то в каком количестве сетей.
По личному опыту — сервис неплохо работает для iOS, для Android заметно хуже. С его помощью мы, например, можем узнать, что:
- App in the Air уже как пару месяцев экспериментирует с рекламой в Instagram
- King of Thieves закупает трафик в 9 сетках, а также увидеть креатив, который используется в Chartboost
- Walking War Robots крутят видео рекламу в Adcolony
Вот еще сервисы, которые позволяют отслеживать рекламные активности конкурентов:
- WhatRunsWhere. С этим сервисом я познакомился, когда они еще были в бете и давали бесплатный доступ. Сейчас сервис платный. Позволяет посмотреть, где крутится реклама интересующих вас мобильных приложений, какие используются креативы, каковы ключевые показатели.
- Appscotch. Лично не работал с сервисом. Со слов знакомых: покрывает лишь несколько больших рекламных каналов, но зато предоставляет по ним подробную детальную информацию (вплоть до потраченных бюджетов).
Как скачивать и слушать музыку на Android
Продолжаем отвечать на популярные в рунете вопросы, касающиеся ОС Android. Надеюсь новичкам помогут наши инструкции)
Операционная система Android открытая – это ее главное отличие от IOS, WP7, WP8 и многих других систем. Благодаря этому фактору пользователь получает уникальную возможность выполнять, в принципе, любые манипуляции с девайсом, включая загрузку и прослушивание мультимедиа контента: фильмов, музыка, аниме, аудиокниг и пр.
Имея устройство на платформе Android любой версии, начиная с 2.1 и выше, пользователь может использовать уйму готовых решений, предназначенных для перемещения музыки на microSD или на внутреннюю память устройства (если в устройстве отсутствует необходимый разъем или же просто не хочется покупать накопитель).
Как загрузить музыку на Android. Пара доступных способов:
1) Стандартный метод (посредством USB подключения)
1. Через USB-кабель подключим к компьютеру смартфон или планшет.
2. Если ранее к компьютеру не подключались, то запустится автоматическая установка необходимых драйверов.
3. Откроем панель уведомлений, перейдем к пункту «USB Mass Storage», нажмем единственную доступную клавишу «Turn on USB Storage».
4. Открываем проводник «Мой компьютер», ищем новый доступный диск, в любую директорию загружаем необходимую музыку (можно создать новую директорию).
2) Через WiFi с помощью специальных программ.
Есть множество приложений, позволяющих получить доступ к содержимому смартфона с помощью WiFi, например, с помощью приложений On Air или WebSharing. По ссылкам вы найдете подробные инструкции по работе с этими программами. Еще одно приложение — AirDroid/ WiFi, о нем напишем немного подробней
Это достаточно новое приложение, однако с каждым днем у него появляется все больше пользователей. Причиной тому его доступность (оно абсолютно бесплатно) и многозадачность. Программа – это интерфейс Wi-Fi соединения между устройствами публичной и домашней сети.
1. Установим программу на Android, подключимся к Wi-Fi.
2. В браузере зайдем на веб-адрес, указанный на первой странице, введем пароль и попадем в интерфейс девайса.
3. Перейдем в раздел Music / Музыка, нажмем верхнюю правую клавишу Upload / Загрузить.
4. Выберем конкретные файлы или папку и нажмем ОК.
5. Дождемся конца загрузки музыки на устройство. Все.
3) Различные приложения для Android, позволяющие скачивать музыку с интернета
Таких приложений на Google Play уже огромное количество, для примера: Mp3 Music Box или любое другое. Суть проста, устанавливаем приложение, ищем в нем нужную музыку и средствами программы скачиваем ее на свой смартфон.
Как слушать музыку на Android
Для этого достаточно воспользоваться одним из плееров:
1) Стандартный аудио-проигрыватель
В устройствах «из коробки» по умолчанию предустановленно приложение для прослушивания музыки.
1. Зайдем в панель программ.
2. Найдем пункт «Музыка» или что-то наподобие его, при наличии в памяти девайса аудиозаписей доступных форматов все треки будут доступны с парочкой вкладок фильтрации.
2) Устанавливаем программу Winamp
Эту программу и так все знают, поэтому скажем только, что на Android она работает также стабильно, как и на Vista, 7, 8, Windows XP.
3) Иные плееры
Существуем масса программ для андроид. У них разнообразные плюсы и минусы, все зависит от того, что же вам нужно: производительность, куча фильтров, интерфейс, мощный эквалайзер, поддержка всех возможных форматов (включая alac, flac и иные, в отличие от mp3, не сжатые по качеству). Вы можете выбрать и скачать аудио плеер, который придется вам по душе.
Закачка из компьютера
Берём наш USB-кабель от зарядного устройства и соединяем им телефон или планшет с компьютером через соответствующие USB порты. На экране нашего разблокированного устройства появится уведомление о USB-подключение к компьютеру, в его меню нужно выбрать подключение как медиа-устройство. После этого с компьютера станет доступна память устройства и с помощью Проводника или других файловых менеджеров можно будет перенести требуемое видео в телефон или планшет. Копировать или перемещать желательно в папку Videos или Моvies. Есть более продвинутый способ – передача файлов посредством радиоволн. Передавать видео по Bluetooth не рекомендую из-за малой скорости передачи, а вот по Wi-Fi вполне комфортно. Для этого надо установить одинаковую программу для соединения по Wi-Fi на смартфон и компьютер. Это могут быть:
- SHAREit – Connect & Transfer;
- Xender – Передача файлов.
На телефон или планшет эти приложения можно скачать из Play Маркет, а на компьютер с сайтов:
- shareit.lenovo.com/lang/ru/index.html;
- xenderdownloadapp.com/#PC.
Пользоваться ими просто и скорость передачи файлов довольно высока. Если же наша фильмотека нас не радует, то остаётся искать и качать желаемый фильм из сети интернет.
Объединяем 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?) — нажмите кнопку. Проверьте работу приложения.