пятница, 29 ноября 2013 г.

FMX.Media.TMediaPlayer или пишем свой mp3-плеер для Android'а #2

В предыдущей статье (FMX.Media.TMediaPlayer или пишем свой mp3-плеер для Android'а #1) я показал вам, как создать mp3 плеер с минимальным функционалом для Android’а и сказал, что возможно добавлю ещё несколько функций. В этой статье я представляю вам почти законченный плеер, о том почему «почти» я расскажу ниже.

Что нового:
  • Добавил кнопку «повторять все треки»
  • Добавил кнопку «воспроизводить случайный трек»
  • В коде: Вкл. и откл. кнопок управления плеером в зависимости от состояния
  • Чтение тегов ID3v1, ID3v2 (Название трека, Автор трека, Альбом, Жанр)
  • В коде: Таб по умолчанию
  • В коде: Обработка события FormKeyUp для кнопки "Назад"
  • Label c длительностью трека разделил на два Label’а и перенёс под трекбар
Upd (23.04.14). Проверено на Delphi XE6

понедельник, 25 ноября 2013 г.

Баги/фичи в Delphi XE5 на Android #1

В процессе изучения и практики в разработке приложений для Android, я наткнулся на несколько интересных багов (или фич). Я писал об этих багах/фичах на форуме сообщества (https://forums.embarcadero.com/index.jspa), но похоже разработчики и представители из Embarcadero не читают его…

Upd (23.04.14). Проверено на Delphi XE6, исправили ещё и третий баг.

суббота, 23 ноября 2013 г.

FMX.Media.TMediaPlayer или пишем свой mp3-плеер для Android'а #1

Сегодня предлагаю вам написать простой mp3-плеер для Android. Сразу следует оговориться, что в папке c примерами кода есть уже готовый плеер, написанный с использованием Android API. Мы же напишем плеер, используя только компонент TMediaPlayer.

Для начала составим список задач, которые плеер должен уметь выполнять:
1) Выводить список всех mp3 файлов на устройстве
2) Воспроизводить, ставить на паузу и останавливать выбранный трек
3) Переключать треки (предыдущий, следующий)
4) Отображать текущую позицию воспроизведения, перематывать трек
5) Автоматически переключать следующий трек
6) Выводить минимальное количество информации (название файла, время (всего/сколько проиграно))

UPD. Новая версия плеера тут: FMX.Media.TMediaPlayer или пишем свой mp3-плеер для Android'а #2

Upd (23.04.14). Проверено на Delphi XE6

четверг, 21 ноября 2013 г.

Изменение FireMonkey стиля во время выполнения приложения

В блоге уже был перевод статьи "Как загрузить пользовательские стили во время выполнения приложения" (Sarina DuPont). Эта статья от другого автора и содержит в себе достаточно полезной информации, чтобы опубликовать её здесь.

При установке RAD Studio или Delphi XE5, также устанавливаются кастомные стили, которые вы можете использовать в своих проектах. По умолчанию все эти стили лежат в папке "C:\Users\Public\Documents\RAD Studio\12.0\Styles". Помимо этих стилей, пользователи имеющие лицензию Delphi XE5 могут загрузить и использовать "премиум" стили(ID: 29598, Premium Style Pack for RAD Studio XE5 (v4 Oct 2013)). Копируем все "премиум" стили в папку "C:\Users\Public\Documents\RAD Studio\12.0\Styles", чтобы все стили были в одном месте. Теперь вместо того чтобы начинать разработку проекта с нуля воспользуемся уже существующими проектами, которые устанавливаются вместе с Delphi XE5. В папке "C:\Users\Public\Documents\RAD Studio\12.0\Samples\FireMonkeyMobile\Controls\" выберем проект "MobileControls".

среда, 20 ноября 2013 г.

Определяем, поддерживается ли наше устройство для разработки приложений

В официальной документации сказано:

RAD Studio поддерживает разработку приложений на устройствах с процессорным ядром 7 версии (ARMv7) и со следующими версиями Android:









Примечание: RAD Studio не поддерживает следующее:
  • Honeycomb (Android 3.x)
  • Gingerbread emulator
  • Tegra 2 devices (NEON support is required)
upd(18.04.14). Добавил списки поддерживаемых устройств.

среда, 6 ноября 2013 г.

Сохраняем настройки приложения, используя Shared Preferences

Приветствую всех посетителей.

Очень часто при разработке более-менее серьёзного приложения для Android требуется где-то и как-то сохранять настройки программы, чтобы они сохранялись после перезапуска приложения. Существует множество вариантов для решения данной задачи, например: сохранять всё в XML-файл; в SQL-базу; хранить настройки в интернете; использовать "Shared Preferences".
Сегодня я хочу рассказать вам, как сохранять простейшие данные в виде «ключ - значение» используя при этом API Android’а - "Shared Preferences".

понедельник, 4 ноября 2013 г.

Delphi XE5 iOS и Android, одна строчка кода - Map My Location

Michael Swindell поставил перед нами задачу создания мобильного приложения с помощью Delphi xe5 для iOS и Android, используя при этом только одну строчку кода. Подумав об этом некоторое время, вот моё первое приложение с одной строчкой кода, "Map My Location". Это приложение использует компоненты TLocationSensor, TToolBar, TLabel и TWebBrowser для создания Android и iOS приложения, которое отображает карты Google с моим текущим местоположением.

upd (20.04.2014). Добавил информацию о разрешениях.

суббота, 2 ноября 2013 г.

Delphi XE5 iOS и Android, поддерживаемые форматы медиа файлов

Просматривая исходный код FM, вы найдёте мультимедийные компоненты (TMediaPlayer, TMediaPlayerControl) и списки поддерживаемых форматов для каждой платформы.

Посмотреть исходный код можно только в версиях Professional и выше, исходный код не включён в версии Trial и Starter. Для этого необходимо пройти по пути "C:\Program Files (x86)\Embarcadero\RAD Studio\12.0\source\fmx", в папке исходных кодов найдите файлы с таким шаблоном имени FMX.Media*.pas. Для XE5 это FMX.Media.pas, FMX.Media.Win.pas, FMX.Media.Mac.pas, FMX.Media.iOS.pas and FMX.Media.Android.pas.