- Создание музыкального проигрывателя на Android: настройка проекта
- Введение
- 1. Создание и настройка нового проекта
- Шаг 1
- Шаг 2
- 2. Запрос устройства для песен
- Шаг 1
- Шаг 2
- 3. Отображение композиций
- Шаг 1
- Шаг 2
- Шаг 3
- Шаг 3
- Заключение
- 10 качественных конструкторов приложений для Android
- Как создать приложение для Android?
- Основные задачи для начинающего разработчика
- 10 самых популярных графических конструкторов приложений
- #1 Alstrapp
- #2 NWICODE
- #3 APPS-TECH
- #4 FREEL APP
- #5 Своёприложение
- #6 APPSFERA
- #7 THEAPPBUILDER
- #8 APPSGEYSER
- #9 IBUILDAPP
- #10 App Inventor
- Писать самому или доверить студии разработчиков?
Создание музыкального проигрывателя на Android: настройка проекта
Russian (Pусский) translation by Yuri Yuriev (you can also view the original English article)
Платформа Android предоставляет ресурсы для управления воспроизведением мультимедиа, которые ваши приложения могут использовать для создания интерфейса между пользователем и его музыкальными файлами. В этой серии уроков мы создадим базовый музыкальный плеер для Android. Приложение представит список песен на устройстве, чтобы пользователь мог выбирать их для воспроизведения. Приложение будет управлять воспроизведением и продолжит исполнение, когда пользователь выйдет из приложения, при этом будет отображаться уведомление.
Введение
Для создания music player потребуется класс ContentResolver для извлечения треков на устройстве, класс MediaPlayer для воспроизведения звука и класс MediaController для управления воспроизведением. Мы также будем использовать Service для воспроизведения звука, когда пользователь не взаимодействует напрямую с приложением. Дальше можете не смотреть, если вы промежуточный разработчик Android, и, если уже создали несколько приложений, вам будет неинтересно. Вот предварительный вид готового приложения:
В этом уроке мы создадим приложение и запросим пользовательское устройство для аудиофайлов с использованием классов ContentResolver и Cursor . В следующей части мы будем использовать образец Adapter для показа песен в виде списка, начала воспроизведения при выборе элемента из списка. В последнем выпуске серии мы используем класс MediaController , чтобы дать пользователю контроль над воспроизведением, реализовать функции перемотки вперёд и назад и включить функцию shuffle. По окончании серии мы рассмотрим другие аспекты воспроизведения media, которые могут улучшить приложение, такие как обработка фокуса аудио, представление медиафайлов в разных видах и воспроизведение потокового media .
1. Создание и настройка нового проекта
Шаг 1
Создайте новый проект Android. Если вы используете Eclipse, то пусть IDE (Integrated Development Environment) создаст для вас основной класс Activity и файл макета. Для некоторых кодов, которые мы используем в этой серии, понадобится минимальный уровень API 16, так что вам нужно будет сделать дополнительные шаги для поддержки более старых версий. Когда проект будет создан, откройте файл Manifest проекта. Внутри элемента manifest добавьте следующее разрешение:
Мы сделаем это разрешение, чтобы воспроизведение музыки продолжалось, когда устройство не работает. В вашем Manifest должен быть элемент для основного класса Activity . Добавьте следующие атрибуты в элемент activity , чтобы установить screenOrientation и launchMode :
Для простоты мы будем придерживаться книжной ориентации. launchMode поможет процессу перехода к приложению после его удаления. Мы отобразим уведомление о текущей песне, нажатие на уведомление вернёт пользователя в приложение. Мы также будем использовать класс Service для воспроизведения музыки. Добавьте следующую строку в Manifest проекта внутри элемента application и после элемента activity :
Измените имя пакета, как хотите и измените имя класса, если хотите.
Шаг 2
Откройте основной файл layout проекта и замените его на следующий layout:
Обязательно измените атрибут tools:context, если ваш основной класс Activity называется по-другому. Макет включает ListView , в котором мы представим список песен.
Мы собираемся включить два пункта меню для переключения функции перемешивания и выхода из приложения. Откройте файл главного меню (res/menu/main.xml) и замените его содержимое следующим:
Если нравится, вы можете хранить строки заголовка в файле res/values/strings.xml. Эти два элемента относятся к drawable файлам. Создайте собственные или используйте эти два изображения для начала:
Мы будем использовать и значок уведомления о воспроизведении. Создайте его или используйте следующий:
Код будет ссылаться на изображения, используя имена rand, end и play, поэтому убедитесь, что вы используете одни и те же имена файлов. Скопируйте изображения в папку (-и) drawables вашего проекта. Мы будем реализовывать эти действия позже.
2. Запрос устройства для песен
Шаг 1
Попробуем запросить устройство пользователя для аудиофайлов. Во-первых, добавьте новый класс Song . Мы будем использовать этот класс для моделирования данных одного звукового файла. В объявлении класса добавьте три переменные экземпляра данных, которые мы сохраним для каждого трека:
Затем добавьте метод конструктора, в котором мы создаём экземпляры переменных:
Наконец, добавьте методы get для переменных экземпляра:
Если вы планируете использовать больше информации о треке, вы можете добавить дополнительные переменные экземпляра в класс.
Шаг 2
Откройте основной класс Activity и добавьте imports:
Объявите следующие переменные экземпляра перед методом onCreate :
Мы будем хранить песни в списке и отображать их в экземпляре ListView в главном layout. В onCreate после установки вида содержимого извлеките экземпляр ListView , используя ID, который мы дали ему в главном макете:
Создайте список, как показано ниже:
Затем в объявлении основного класса Activity после существующих методов создайте вспомогательный метод для извлечения информации о звуковом файле:
Внутри этого метода создайте экземпляр ContentResolver , извлеките URI для внешних музыкальных файлов и создайте экземпляр Cursor , используя экземпляр ContentResolver для запроса музыкальных файлов:
Теперь мы можем перебрать результаты, сначала проверив, что у нас достоверные данные:
Сначала мы извлекаем индексы столбцов для интересующих нас элементов данных для каждой песни, затем мы используем их для создания нового объекта Song и добавления его в список, перед тем как продолжить обзор результатов.
Вернитесь в onCreate после кода, который мы добавили, вызовите этот новый метод:
3. Отображение композиций
Шаг 1
Теперь мы можем отобразить список песен в пользовательском интерфейсе. В методе onCreate после вызова вспомогательного метода, который мы создали минуту назад, давайте отсортируем данные так, чтобы песни представлялись в алфавитном порядке:
Мы используем переменную title в классе Song , используя добавленные методы get, чтобы реализовать метод compare , сортируя песни по заголовкам.
Шаг 2
Определим layout для представления каждой песни в списке. Добавьте новый файл в папку res/layout вашего проекта, назвав его song.xml и введя следующее:
Не стесняйтесь изменять layout по своему вкусу. Каждая песня в списке будет представлена строками названия и артиста, поэтому мы будем использовать TextViews для отображения этих данных. Обратите внимание: в теге открытия LinearLayout указан атрибут onClick . Мы будем использовать этот метод в основном классе Activity , чтобы реагировать на выбор песни в списке, проигрывая песню, представленную элементом списка, который был выбран.
Шаг 3
Мы будем использовать Adapter для отображения песен в виде списка. Добавьте в приложение новый класс SongAdapter или назовите иначе. При создании класса назначьте ему суперкласс android.widget.BaseAdapter . Eclipse должен вставить следующую схему:
Вам нужно будет добавить следующие imports:
В объявлении класса задайте следующие переменные:
Мы передадим список композиций из основного класса Activity и используем LayoutInflater для сопоставления строк заголовка и исполнителя с TextViews в созданном нами layout песни.
После переменных экземпляра придайте адаптеру метод конструктора для их создания:
Измените содержимое метода getCount , чтобы вернуть размер списка:
Вы можете оставить методы getItem и getItemId нетронутыми. Обновите реализацию метода getView , как показано ниже:
Мы устанавливаем текст названия и исполнителя, выбирая правильный экземпляр Song из списка, используя индекс позиции, сопоставляя эти строки с представлениями, добавленными в файл макета песни. Мы также устанавливаем позицию в качестве тега вида, которая позволит нам играть правильную песню, когда пользователь нажимает на элемент в списке. Помните, что файл формата song.xml включал атрибут onClick . Мы будем использовать метод, указанный там, чтобы получить тег в Activity .
Шаг 3
Вернувшись в основной класс Activity , в методе onCreate после сортировки списка создайте новый экземпляр класса Adapter и установите его в ListView :
Когда вы запускаете приложение, оно должно отображать список песен на устройстве, щёлкнув по ним, приложение будет вызывать исключение на данный момент, но мы реализуем обработчик щелчка в следующем уроке.
Заключение
Теперь мы настроили приложение для чтения песен с пользовательского устройства. В следующей части мы начнем воспроизведение, когда пользователь выберет песню, используя класс MediaPlayer . Мы реализуем воспроизведение с использованием класса Service , чтобы оно продолжалось, пока пользователь занят другими приложениями. Наконец, мы будем использовать класс MediaController , чтобы дать пользователю управлять воспроизведением.
Источник
10 качественных конструкторов приложений для Android
Как создать приложение для Android?
Для начал вам нужно определиться, как именно вы будете создавать приложения: вручную прописывать код или с помощью графических конструкторов приложений? Ручные верстаки более продвинуты и дают более сложные игры, но для новичка это не вариант.
Так как вы читаете эту статью, то скорее всего, ваши знания еще не на высоком уровне и вы только делаете первые шаги.
Основные задачи для начинающего разработчика
Прежде разберемся, какой конструктор приложений вы будете использовать. Чем должен обладать наш редактор:
- Интуитивно понятным для вас интерфейсом.
- Логической и последовательной работе в редакторе.
- Работа в двух направлениях: с кодом и графикой.
- Четкая инструкция по работе и возможность задавать вопросы по работе на форуме поддержки.
Придерживайтесь данных советов и выбирайте только проверенные редакторы.
10 самых популярных графических конструкторов приложений
#1 Alstrapp
Alstrapp — полноценная CMS для создания и управлением приложением для Android и iOS.
Нет никаких абонентских платежей и подписок — только единоразовая покупка лицензии, которая дает возможность создавать неограниченное(!) количество приложений без ограничений.
Из основных преимуществ стоит отметить:
- PUSH и Alert уведомления
- управление клиентами (регистрация аккаунта, личный кабинет)
- редактор контента (возможно добавлять и редактировать любой HTML контент без обновления приложения)
- чат с пользователями
- брендирование приложения (собственные иконки и экраны загрузки)
- только бесплатные шаблоны для Android и iOS устройств
- управление всеми приложениями в одном окне
- 100% открытый исходный код
Приложение созданное через Alstrapp, будет иметь чистый код и без труда пройдет модерацию в мобильных сторах. Как правило, с этим пунктом во многих онлайн конструкторах есть проблемы.
Alstrapp имеет систему локализаций и поддерживает русский язык.
Кстати, на русском языке можно написать и в поддержку — разработчики наши соотечественники.
Перейти на сайт →
#2 NWICODE
NWICODE является инновационным лидером в области разработок приложений, т.к. разработчикам удалось создать полноценную CMS, благодаря который каждый человек сможет написать своё приложение без каких либо знаний языков программирования. На этой платформе возможно создавать приложения для Android, iOS, а также Web App. Основные плюсы:
- модули календаря, онлайн-записи, объявления и д.р;
- не требует навыков программирования;
- встроенная аналитика;
- мобильный интернет-магазин Ecommerce;
- бесплатный конструктор лэндингов;
- интеграция с социальными сетями.
Также хорошими плюсами является отзывчивая команда техподдержки и бесплатный хостинг для приложений на первый месяц обслуживания.
Программа оставляет открытым исходный код и стили, которые можно изменять на своё усмотрение, если обладаете навыками программирования. Полностью на русском языке.
#3 APPS-TECH
Мы заметили удивительную вещь. Среди зарубежных конструкторов приложений большинство бесплатные, а среди отечественных – платные. Поэтому APPS-TECH словно глоток свежего воздуха, ведь предлагает создание и размещение приложений бесплатно.
Понятный интерфейс на русском языке и возможность разрабатывать неограниченное количество приложений портят только банальные шаблоны со стандартным дизайном
#4 FREEL APP
Главная особенность сервиса FREELAPP в отсутствии классической оплаты. Платить нужно только за лицензию на определённое количество приложений. Видеоуроки с пошаговым обучением, открытые исходные коды, удобный интерфейс, хранение данных на безопасных облачных серверах – благодаря этим преимуществам FREELAPP находится в нашем списке.
К сожалению сервис больше не доступен.
#5 Своёприложение
Платформа с креативным названием Своёприложение создана в начале 2017 года молодыми российскими предпринимателями и обладает широким функционалом. Она подходит для всех типов бизнеса, особенно, мобильных интернет-магазинов.
Первая «фишка» сервиса в том, что вы можете прислать свой фирменный стиль менеджеру, и он бесплатно интегрирует его в ваше приложение. Вторая — в приложении уже подключен эквайринг
К сожалению сервис больше не доступен.
#6 APPSFERA
Платформа APPSFERA позволяет создать приложение без технических знаний и буквально за несколько минут. Она предлагает более 50 готовых модулей, полностью настраиваемый дизайн, возможность использования собственных стилей и кодов, а также интегрирование RSS ленты любого сайта в приложение.
Вас ждут и дополнительные «плюшки», среди которых фото и видеогалерея, отправка push сообщений непосредственно на смартфоны клиентов, обнаружение геолокации
#7 THEAPPBUILDER
Это бесплатный инструмент создания приложения. Явное неудобство состоит в том, что русского языка нет вообще, поэтому начальные знания английского языка вам необходимы, но в целом разобраться нетрудно.
Сервис отлично подойдёт для начального и среднего уровня знания темы. Доступны пошаговые инструкции, также есть полезные советы.
Перечислю главные достоинства THEAPPBUILDER:
- Невероятно богатый выбор готовых шаблонов. Идеально подходит для создания простых, незамысловатых приложений для Android.
- Очень детальная статистика по созданию ваших приложений, доступная в простой форме.
- Публикация вашего приложения в Google Play, не составит вам больших усилий.
#8 APPSGEYSER
Самый быстрый конструктор приложений. Главное преимущество данного редактора – вшивать ссылки и рекламу вашего сайта в приложения Android.
Вот еще некоторые главные отличия данного сервиса:
- Написание приложений происходит довольно быстро
- Создавать действительно рабочие игры с отменной графиком.
- Понятная и удобная публикация в Google Play.
- AppsGeyser дает вам работу по монетизировании приложения, непосредственно из нее.
- В режиме онлайн вам доступно: создавать, редактировать и выкладывать в интернет, любые ваши приложения.
#9 IBUILDAPP
Этот редактор, можно смело именовать как – конструктор приложений. Что вам будет нужно, так это складывать уже существующие пазлы, которых собранно очень много в инструменте.
Перечислим особенности IBUILDAPP:
- Очень объемный софт шаблонов на разные тематики: фотостудии, такси, рестораны, перевозки и многое другое. Выбирайте свой шаблон и подгоняйте его под свои нужды.
- Наличие инструментов для продвижения вашего приложения в Google Play. Теперь вам не стоит переживать, за место под солнцем, программа сделает это за вас и продвинет в рейтинге ваш проект.
- Подключение рекламы к вашему проекту, создавая тем самым возможность принести вам прибыль.
#10 App Inventor
Самый востребованный графический конструктор приложений на рынке. Данный ресурс был разработан, некем иным, как компанией Google. Этот редактор оснащен самыми продвинутыми методами и алгоритмами, которые способны создавать достойные программы.
Бесплатность проекта, только усиливает его привлекательность для простого обывателя. Для работы с данным приложением, вам необходимо иметь аккаунт в Google системе. Регистрация также бесплатна. Все ваши начинания, будут сохраняться в облаке, что дает вам неограниченные возможности работать дома с любого устройства, так и в любой точке мира.
Еще хочется отметить следующее:
- Работая, вы все можете отслеживать в реальном времени, все действия просматриваются сразу.
- Сохранение вашего проекта происходит в один клик.
Интересный факт: через десять лет каждый второй разработчик компьютерных игр будет женщиной
Писать самому или доверить студии разработчиков?
Из вышесказанного в статье, сразу отметим, что написание программ вручную не так сложно. Создавая самим, вы не уплачиваете разработчикам, а значит получаете неоценимый личный опыт в создании и выгоду в первоначальном взносе. При личном написании работы, вам будет проще создавать то, что вы желаете, ведь не всегда можно доходчиво описать свои желания, а уж тем более воссоздать в программе.
Но если вы решитесь довериться студии разработчиком, можно рассчитывать на быстрое выполнение вашего заказа. Профессионалы своего дела, способны создавать ваши пожелания в проекты, на уровне интуиции, они все знают об этом деле. Так вы получите очень дельные советы по улучшению вашей программы, для увеличения ее прибыльности и качества.
В заключение отмечу, чтобы вы ни выбрали, для начала составьте план ваши действий, прикиньте, если у вас столько свободного времени для создания и каковы ваши финансовые возможности. В целом каждый из ресурсов поможет вам достигнуть желаемого — было бы только желание!
Источник