Android Mono '/data/data/Mono.Android.DebugRuntime/lib/libmonosgen-2.0.so' не найден - PullRequest
1 голос
/ 06 марта 2012

Интересно, можете ли вы помочь мне с этой ошибкой?

Я запускаю полностью обновленную установку Windows 7 с Visual studio 2010 Professional в пробном режиме.

В Visual Studio я создаю новое приложение OpenGl Mono для Android используя встроенный шаблон. Я компилирую и запускаю приложение.

Эмулятор загружается (я использую API_8) EMU. Приложение запускается, а затем прерывается. (В эмуляторе я получаю черный экран, который быстро закрывается.)

То же самое происходит, если я делаю подобное, используя Mono Develop IDE и или другие шаблоны.

Вот дамп сообщения об ошибке (я не могу найти много информации в Google) Похоже, ошибка связана с ошибкой загрузки библиотеки.

Спасибо

// DUMP

03-05 23:23:47.464 D/AndroidRuntime(  418): 
03-05 23:23:47.464 D/AndroidRuntime(  418): >>>>>>>>>>>>>> AndroidRuntime START <<<<<<<<<<<<<<
03-05 23:23:47.464 D/AndroidRuntime(  418): CheckJNI is ON
03-05 23:23:47.574 D/AndroidRuntime(  418): --- registering native functions ---
03-05 23:23:48.034 I/ActivityManager(   60): Start proc OpenGLApplication1.OpenGLApplication1 for broadcast OpenGLApplication1.OpenGLApplication1/mono.android.Seppuku: pid=424 uid=10038 gids={3003, 1015}
03-05 23:23:48.164 I/ActivityThread(  424): Publishing provider OpenGLApplication1.OpenGLApplication1.__mono_init__: mono.MonoRuntimeProvider
03-05 23:23:48.174 D/dalvikvm(  424): Trying to load lib /data/data/OpenGLApplication1.OpenGLApplication1/lib/libmonodroid.so 0x44e7f010
03-05 23:23:48.174 D/dalvikvm(  424): Added shared lib /data/data/OpenGLApplication1.OpenGLApplication1/lib/libmonodroid.so 0x44e7f010
03-05 23:23:48.184 F/MonoDroid(  424): shared runtime initialization error: Cannot load library: load_library[1083]: Library '/data/data/Mono.Android.DebugRuntime/lib/libmonosgen-2.0.so' not found
03-05 23:23:48.204 I/ActivityManager(   60): Process OpenGLApplication1.OpenGLApplication1 (pid 424) has died.
03-05 23:23:48.214 D/AndroidRuntime(  418): Shutting down VM
03-05 23:23:48.214 D/jdwp    (  418): adbd disconnected
03-05 23:23:48.624 D/AndroidRuntime(  432): 
03-05 23:23:48.624 D/AndroidRuntime(  432): >>>>>>>>>>>>>> AndroidRuntime START <<<<<<<<<<<<<<
03-05 23:23:48.624 D/AndroidRuntime(  432): CheckJNI is ON
03-05 23:23:48.734 D/AndroidRuntime(  432): --- registering native functions ---
03-05 23:23:49.173 I/ActivityManager(   60): Start proc OpenGLApplication1.OpenGLApplication1 for broadcast OpenGLApplication1.OpenGLApplication1/mono.android.Seppuku: pid=438 uid=10038 gids={3003, 1015}
03-05 23:23:49.294 I/ActivityThread(  438): Publishing provider OpenGLApplication1.OpenGLApplication1.__mono_init__: mono.MonoRuntimeProvider
03-05 23:23:49.303 D/dalvikvm(  438): Trying to load lib /data/data/OpenGLApplication1.OpenGLApplication1/lib/libmonodroid.so 0x44e7f010
03-05 23:23:49.303 D/dalvikvm(  438): Added shared lib /data/data/OpenGLApplication1.OpenGLApplication1/lib/libmonodroid.so 0x44e7f010
03-05 23:23:49.314 F/MonoDroid(  438): shared runtime initialization error: Cannot load library: load_library[1083]: Library '/data/data/Mono.Android.DebugRuntime/lib/libmonosgen-2.0.so' not found
03-05 23:23:49.334 I/ActivityManager(   60): Process OpenGLApplication1.OpenGLApplication1 (pid 438) has died.
03-05 23:23:49.344 D/AndroidRuntime(  432): Shutting down VM
03-05 23:23:49.344 D/jdwp    (  432): adbd disconnected
03-05 23:23:50.333 D/AndroidRuntime(  447): 
03-05 23:23:50.333 D/AndroidRuntime(  447): >>>>>>>>>>>>>> AndroidRuntime START <<<<<<<<<<<<<<
03-05 23:23:50.333 D/AndroidRuntime(  447): CheckJNI is ON
03-05 23:23:50.443 D/AndroidRuntime(  447): --- registering native functions ---
03-05 23:23:50.873 I/ActivityManager(   60): Starting activity: Intent { act=android.intent.action.MAIN flg=0x10000000 cmp=OpenGLApplication1.OpenGLApplication1/openglapplication1.Activity1 }
03-05 23:23:50.893 I/ActivityManager(   60): Start proc OpenGLApplication1.OpenGLApplication1 for activity OpenGLApplication1.OpenGLApplication1/openglapplication1.Activity1: pid=453 uid=10038 gids={3003, 1015}
03-05 23:23:50.923 D/AndroidRuntime(  447): Shutting down VM
03-05 23:23:50.923 D/jdwp    (  447): adbd disconnected
03-05 23:23:50.953 I/AndroidRuntime(  447): NOTE: attach of thread 'Binder Thread #3' failed
03-05 23:23:51.173 I/ActivityThread(  453): Publishing provider OpenGLApplication1.OpenGLApplication1.__mono_init__: mono.MonoRuntimeProvider
03-05 23:23:51.223 D/dalvikvm(  453): Trying to load lib /data/data/OpenGLApplication1.OpenGLApplication1/lib/libmonodroid.so 0x44e7eef0
03-05 23:23:51.223 D/dalvikvm(  453): Added shared lib /data/data/OpenGLApplication1.OpenGLApplication1/lib/libmonodroid.so 0x44e7eef0
03-05 23:23:51.263 F/MonoDroid(  453): shared runtime initialization error: Cannot load library: load_library[1083]: Library '/data/data/Mono.Android.DebugRuntime/lib/libmonosgen-2.0.so' not found
03-05 23:23:51.283 I/ActivityManager(   60): Process OpenGLApplication1.OpenGLApplication1 (pid 453) has died.
03-05 23:23:51.293 I/UsageStats(   60): Unexpected resume of com.android.launcher while already resumed in OpenGLApplication1.OpenGLApplication1
03-05 23:23:51.423 W/InputManagerService(   60): Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@45104b68

Ответы [ 3 ]

1 голос
/ 16 декабря 2014

Проблема связана с более новыми версиями mono, где libmonosgen-2.0 не устанавливается автоматически.Путь, по которому вы увидите ошибку, на самом деле является симлинком для библиотеки.Что вам нужно сделать, это вручную или с помощью non-mono apk создать следующее:

Папка с именем вашего пакета в / data / app-lib / в папке, которую вам нужно будет нажать на libmonosgen-2.0.so (и libmonodroid.so, если необходимо)

После того, как это будет сделано, вы должны перейти к data / data / your.package.name и создать симлинк из lib -> папки, которую вы создали ранее.Используемая команда: ln -s.

Я заметил, что в некоторых случаях simlink существует, но указывает на ложное местоположение.

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

0 голосов
/ 06 марта 2012

Другая возможность состоит в том, что на вашем устройстве недостаточно свободного места . Проблема не в вашем пакете (OpenGLApplication1), проблема в установке пакета Mono.Android.DebugRuntime, так как /data/data/Mono.Android.DebugRuntime/lib/libmonosgen-2.0.so не существует.

Я бы предложил просмотреть журнал adb logcat и посмотреть, присутствует ли что-то вроде следующего:

W/NativeHelper(   98): Failed to cache package shared libs
W/NativeHelper(   98): java.io.IOException: Couldn't create cached binary /data/data/Mono.Android.DebugRuntime/lib/libmonosgen-2.0.so in /data/data/Mono.Android.DebugRuntime/lib
W/NativeHelper(   98):  at com.android.internal.content.NativeLibraryHelper.copyNativeBinaryLI(NativeLibraryHelper.java:289)

Если присутствуют такие сообщения, как, удалите пакет Mono.Android.DebugRuntime (adb uninstall Mono.Android.DebugRuntime), удалите некоторые дополнительные приложения с вашего устройства (чтобы освободить место) и попробуйте переустановить приложение из IDE.

0 голосов
/ 06 марта 2012

Попробуйте зайти в свойства проекта и отключить «быстрое развертывание».Затем вручную удалите ваше приложение из эму / устройства и попробуйте снова.

...