Ошибка на рутированных телефонах Android: сообщение:DllNotFoundException: sqlite3
У меня есть приложение Unity, которое отлично работает на телефонах с iOS и Android, но на телефонах с ОС root у меня возникает эта ошибка.
устройство:Nexus 4, engine_version:unity 5.2.2, jailbroken:true, производитель:LGE, сообщение:DllNotFoundException: sqlite3
Так как приложение работает на других телефонах Android, я считаю, что проблема заключается в том, что телефон рутирован. Любые идеи о том, как это исправить, будут оценены.
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", в которую вы должны поместить соответствующие версии библиотек. Как это:
Вы можете скачать версию библиотеки для x86 здесь и для ARM здесь.
Источник: http://answers.unity3d.com/questions/872068/dllnotfoundexception-sqlite3.html