2015-10-30 4 views
0

У меня есть приложение Unity, которое отлично работает на телефонах iOS и Android, но на корневых мобильных телефонах я получаю эту ошибку.Ошибка на корневых телефонах для Android: сообщение: DllNotFoundException: sqlite3

устройства: Nexus 4, engine_version: единство 5.2.2, джейлбрейк: правда, производитель: LGE, сообщение: DllNotFoundException: sqlite3

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

ответ

1

Вы действительно думаете, что корень является основной причиной? Вы добавили библиотеки sqlite самостоятельно в проект Unity (Mono.Data.Sqlite.dll, sqlite3.dll, System.Data.dll)?

Я также нашел что-то вроде этого на форумах Unity:

Проблема решается следующим образом: помимо Mono.Data.Sqlite.dll, sqlite3.dll и System.Data.dll необходимо использовать библиотека libsqlite3.so. Обратите внимание, что для ARM и x86 вам нужны разные библиотеки. Чтобы использовать нужную версию библиотеки, в зависимости от типа устройства (ARM или x86), необходимо создать папку «Android» в папке «Плагины», папке «libs» в «Android», «armeabi-v7a» и «x86» в папке «libs», в которой вы размещаете соответствующие версии библиотек. Пример: enter image description here

Здесь вы можете скачать версию библиотеки для x86 здесь и для ARM здесь.

Src: http://answers.unity3d.com/questions/872068/dllnotfoundexception-sqlite3.html