Android apk файл слишком большой при использовании библиотеки кодировщика FFMPeg - PullRequest
0 голосов
/ 28 марта 2020

Я разрабатываю приложение, которое создает видео x264 со следующей библиотекой:

com.arthenica:mobile-ffmpeg-full:4.2.2.LTS

, но файл apk результата слишком велик (~ 71 МБ), поэтому я попытался:

com.arthenica:mobile-ffmpeg-min-gpl:4.2.2.LTS

и таким образом, поскольку библиотека загружает только несколько кодеков, включая те, которые мне нужны, размер апка был уменьшен до ~ 49 МБ, что намного лучше, но все равно выглядит слишком большим для меня, поэтому мне нужно знать если кто-то из вас знает лучший способ уменьшить размер apk, потому что люди обычно отказываются скачивать такие большие приложения

Что касается остальной части приложения (чертежи, ресурсы и т. д.), то они хорошо оптимизированы, потому что если я удалите эту библиотеку и перестройте, размер приложения упадет до 10 МБ

Я читал этот вопрос: FFMPEG Android Библиотека Увеличение размера

и пользователь SR предлагает сжать все модели архитектуры процессора в одном архивном файле и извлечь целевую библиотеку процессора на основе модели процессора в каталог приложения и загрузить оттуда ffmpeg, но я действительно не знаю, как это сделать.

Я проверяю структура папок моего приложения и заметила, что есть следующие папки относительно ffmpeg lib:

arm64-v8a => ~16mb
armeabi-v7a => ~29mb
x86 => ~17mb
x86_64 => ~21mb

Но не уверен, смогу ли я удалить какой-либо из них, и, как вы можете видеть, armeabi-v7a является самым большим.

enter image description here

1 Ответ

0 голосов
/ 28 марта 2020
  1. Согласно вашему требованию, FFmpeg - лучший вариант для большинства задач обработки видео, но проблема с FFmpeg в том, что он увеличит размер приложения. Поэтому я предлагаю вам скомпилировать эту библиотеку FFMPEG в вашем проекте, она также имеет много встроенных функций, таких как add musi c, добавление изображения на Video et c. Это определенно поможет вам с вашей работой, а также размер очень маленький ~ 11 МБ.
  2. Вы можете использовать Android App Bundle ( aab ) для дальнейшего уменьшения размера приложения.
...