Аудио плейър Delphi за Android, използващ библиотеката BASS
В средата на миналата година се наложи да се напише просто приложение за мобилни платформи Android и iOS. Първият работещ проект беше KTeam. След успешното му стартиране имаше нужда да се напише аудио плейър, способен да възпроизвежда стрийминг на интернет радиостанции.
И така, днес ще опиша подробно как да създадете прост стрийминг плейър.
За да работим, се нуждаем от програмната среда Code Gear RAD Studio XE7, препоръчвам да работите в тази конкретна версия на програмата, тъй като в използваните библиотеки има някои несъответствия при работа с предишни версии.
Поради факта, че няма вградени инструменти за възпроизвеждане на интернет поток, ще използваме прекрасната библиотека BASS, за да напишем приложение за Android (други компоненти трябва да се използват за iOS).
За правилната работа на библиотеката BASS препоръчвам също така да инсталирате DPF компонентите на Android Native Components, в моя пример ще използвам версия 2.8.6.
Е, мисля, че процесът на инсталиране на Code Gear RAD Studio XE7 не си струва да се описва, така че веднага пристъпваме към инсталиране на допълнителни компоненти и библиотеки, тъй като тази част причинява най-много проблеми и затова ще опиша този етап най-подробно.
Забележка:Препоръчвам да използвате тази конкретна версия на библиотеката, защото предишните версии не работят с XE7 и възниква грешка при инициализиране на библиотеката.
BASSФункции
DPF Android Native Components
За правилната работа на библиотеките BASS често е необходимо да се инсталират компонентите на DPF Android Native Components, тъй като те съдържат компонент за работа с аудио, без който компилаторът просто щехвърля грешка.
Отиваме на официалния уебсайт и изтегляме най-новата версия на компонентите. Или можете да изтеглите версия 2.8.6 от моя уебсайт.
След като изтеглим всички необходими допълнителни файлове, пристъпваме към инсталиране на компонентите.
Нека започнем с DPF Android Native Components. Препоръчвам (за да избегнете допълнителни проблеми с връзката) разопаковайте файловете в папката DPF.Android.Native.Components.v2.8.6 в корена на C устройството.
В директорията с файлове има файл Install.txt. Тези, които са добри с английски, могат да направят всичко според инструкциите, описани във файла, за тези, които са учили немски в училище, ще опиша процеса на инсталиране на компонентите подробно.
Стартирайте Codegear RAD Studio. След това в горното меню отворете Инструменти->Опции->Опции на Delphi->Библиотека.
В падащия списък вдясно изберете платформата „32-битов Windows“ и добавете пътя към нашите компоненти в секцията „Път на библиотеката“.
Сега правим същото за платформата Android.
Сега трябва да компилираме и инсталираме компонентите. За да направите това, щракнете върху Файл -> отворен проект. Отворете проекта от папката с компоненти, съответстваща на вашата среда за програмиране.
След това трябва да компилираме проекта и да инсталираме получените компоненти.
Щракнете с десния бутон върху проекта в инспектора на проекти и изберете елемент"Build", изграждането на проекта ще започне.
След като изграждането приключи, щракнете отново с десния бутон върху проекта в инспектора и изберете"Инсталиране".
Компонентите са готови за работа. Нека започнем да създаваме проект.
Вече скицирах малък проект с няколко бутона за стартиране и спиране на плейъра и снимка за привличане на внимание :)
За да работим с библиотеката BASS, трябва да добавим файла BASSFunctions.pas към директорията на проекта и да го посочим в секциятаuses.
Сега самата библиотекаlibbass.so. Трябва да добавим тази библиотека към нашия проект, в противен случай нищо няма да работи.
Отворете архива bass24-android.zip и вижте. Много папки, интересуваме се само от еднаlibsв момента. Разопаковайте го в нашата директория с проекти.
В директорията libs има три поддиректории, ние се интересуваме от 2 от тях:
Те съдържат два различни файла libbass.so.
След като сме копирали тази директория в директорията на проекта, ние се връщаме отново в средата за програмиране и отваряме секциятаDeployment, за да добавим нашите библиотеки към програмата.
След като добавим библиотеките към нашия проект, трябва да променим параметъра „Отдалечен път“ за всяка библиотека съответно на „library\lib\armeabi“ и „library\lib\armeabi-v7a“. Тази процедура трябва да се извърши както за конфигурации „Debug“, така и за „Release“.
Е, това е всичко и сте готови да започнете да пишете код, а кодът всъщност е доста прост.
Ние декларираме глобална променлива.
По време на създаването на формуляра ние инициализираме библиотеката.