2017-01-27 8 views
0

У меня нет опыта работы с NDK, и я пытаюсь отладить проблему в используемой библиотеке. Извиняюсь за отсутствие знаний по этому вопросу. Библиотека упакована как файл aar.Использование альтернативной версии NDK для поддержки библиотеки

Библиотека отчетов неперехваченное исключение, а также ссылки НДК-r12-релиз в ошибке:

A/libc: /Volumes/Android/buildbot/src/android/ndk-r12-release/ndk/sources/cxx-stl/llvm-libc++abi/libcxxabi/src/abort_message.cpp:74: void abort_message(const char *, ...): assertion "terminating with uncaught exception of type char const*" failed 
A/libc: Fatal signal 6 (SIGABRT) at 0x000066f2 (code=-6), thread 26754 (Thread-9778) 

Обсуждая вопрос с разработчиками библиотеки, они говорят мне, что он был построен с использованием «ndk- r13-release ", и что использование r13 разрешило аналогичную проблему тому, что я вижу.

Первоначально у меня не было установленного NDK, а затем установлена ​​новейшая NDK из студии Android, версия 13.1.3345770, и все же я вижу ту же ссылку на r12 в logcat.

Мое приложение полностью Java, и у него нет другой библиотеки NDK, кроме этого одного компонента. Итак, опять же, я немного не осведомлен о способах NDK-стороны Android.

Мой вопрос заключается в том, будет ли библиотека, предоставленная как aar, предварительно скомпилирована, и если эта ссылка на ndk-r12-release будет означать, что она была скомпилирована с этим, а не r13, как мне говорят ? или я компилирую библиотеку во время моей сборки, и могу ли я заставить библиотеку использовать r13?

Любое понимание приветствуется!

ответ

0

От того, что вы говорите, кажется, что проблема не может быть вашим местным NDK - факт в том, что у вас не было установленного NDK раньше, как вы упомянули.

Файл aar - это файл в формате zip, как файл Jar, и библиотека C++ уже встроена внутри. Мне кажется, что библиотека была построена с помощью NDK r12 - поэтому, если библиотека требует NDK r13 - вам нужно перестроить ее с помощью этой версии (или попросите разработчиков предоставить вам одну).

+0

Спасибо, это именно то, как я это понял, мне просто нужно было убедиться, что я не был сумасшедшим. – xceph