• 0
Авторизация  
Yarpda

Механизм работы с APK Extension file (OBB)

Вопросы

Подскажите, существуют ли  в FMX механизмы работы с файлами расширений (OBB)? В андроид SDK есть возможность скачать этот библиотеку (Google play APK Expansion library), но как ее использовать в FMX проекте никакой информации нет. Подскажите кто-то уже сталкивался с такой проблемой? 

P.S. для справки: APK Expansion file можно загрузить в Google Play, если размер APK превышает 100 мб. Данный файл представляет из себя архив с расширением obb, который содержит дополнительных контент приложения. Автоматически помещается помечается в папку androind/obb/<project_name>/file.obb.

 

Изменено пользователем Yarpda

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 ответа на этот вопрос

  • 1

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

После распаковки приложения в каталоге внешнего хранилища (карты или, если нет, внутренней памяти)  Android/obb/<application ID>/ появится файл дополнений с расширением *.obb 

Это обычный архив ZIP и его можно распаковать, например, в GetDocumentsPath средствами TZipFile

Проблема в том, что в FMX нет процедуры возвращающей путь к файлу obb. 

Пришлось написать костыль: 

UnicodeString GetObbFile()
{
  UnicodeString str = StringReplace(System::Ioutils::TPath::GetPublicPath(), "/data/", "/obb/", TReplaceFlags());
  str = StringReplace(str, "/files", "/", TReplaceFlags());
  TSearchRec sr;
  FindFirst(str + "*.obb", faAnyFile, sr );
  return  str + sr.Name;
}

Теперь у вашего приложения есть путь к единственному obb

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Я пробовал прикрутить obb файл, но распаковывать его как-то не догадался. Да и это наверное не совсем правильно, т.к. распаковывать и так не маленький файл повторно как то совесть не позволяет. На сколько я знаю в android (не FMX) есть механизм работы с файлами внутри obb напрямую (как с папкой), но как это сделать под FMX так и не нашел... 

Изменено пользователем Yarpda
исрпавления

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу