Соберите PDFium в Android

Я столкнулся с проблемой. Мне нужно добавить поддержку чтения PDF-файлов в мое приложение для Android (сейчас я использую Mupdf, но мне нужно его изменить).

Я нашел проект PDFium (https://code.google.com/p/pdfium/) и я думаю, что это то, что мне нужно для моих нужд.
У меня не так много опыта работы с Android, и я не смог собрать его для Android, я следовал инструкциям по сборке отсюда https://code.google.com/p/pdfium/wiki/Build без хороших результатов. .

Не могли бы вы подсказать или посоветовать, как создать этот инструмент в Android?

Заранее спасибо!!!


person peskarolo    schedule 23.10.2014    source источник
comment
Что конкретно произошло? Ошибки компиляции? Ошибки ссылки? Мы можем диагностировать сообщения об ошибках, но ничего сделать с этим не получилось.   -  person Dan Albert    schedule 24.10.2014
comment
Я следовал инструкциям по сборке и создал проект Visual Studio. Но теперь я не знаю, как продолжить... Нужно ли мне собирать сейчас с помощью Android NDK? Я совсем потерялся в этом моменте...   -  person peskarolo    schedule 24.10.2014
comment
Чья инструкция по сборке? Небольшой поиск не дал руководств по сборке pdfium для Android. Да, вам нужно собрать с помощью NDK.   -  person Dan Albert    schedule 26.10.2014
comment
Я тоже ищу инструкции по сборке Android... Я совершенно ничего не знаю о компиляции NDK и C для Android, поэтому может помочь довольно подробное руководство...   -  person N Dorigatti    schedule 16.01.2015
comment
@peskarolo Вы успешно собрали pdfium, где я могу найти шаги для его сборки.   -  person Herry    schedule 05.11.2015


Ответы (2)


Как построить?

Я рекомендую сборку на Linux (достаточно виртуальной машины), потому что Windows официально не поддерживается, а на более новых версиях OS X много проблем.

Вам потребуется около 60 ГБ свободного места.

  • установить OpenJDK 8
  • $ mkdir ~/android_src && cd ~/android_src или выберите любой другой путь
  • $ repo init -u https://android.googlesource.com/platform/manifest -b android-7.1.1_r28

    (подробное описание доступно здесь)

  • $ repo sync и ждать...
  • клонируйте этот репозиторий (или загрузите zip с его содержимым)
  • замените make-файлы в ~/android_src соответствующими make-файлами из этого репозитория.
  • $ cd ~/android_src
  • $ source build/envsetup.sh
  • $ cd external/pdfium/fpdfsdk
  • $ lunch и выберите архитектуру
  • $ mma и подождите ~5 минут
  • библиотека доступна в ~/android_src/out/target/product/generic*/obj/lib/libmod*.so, скопируйте ее куда-нибудь
  • $ rm -r ~/android_src/out перед следующей сборкой

У меня это сработало, но если у вас не работает, попробуйте установить дополнительные пакеты из списка здесь.

Источник

person Ahmer Afzal    schedule 10.03.2018

Создайте его в рамках AOSP
https://android.googlesource.com/platform/external/pdfium/
Используйте инструкции mm или mma для сборки только модуля pdfium

Я только успешно создал общую библиотеку, но не применял ее на практике.

person shockwave    schedule 19.04.2015
comment
извините за вопрос, а что вы имеете в виду под инструкциями мм или мма? Вы можете расширить это? - person N Dorigatti; 09.07.2015
comment
Все они являются функциями оболочки, поэтому обязательно инициализируйте среду с помощью . build/envsetup.sh или source build/envsetup.sh. - person shockwave; 09.07.2015