how to preload libunity.so library into android system?
We want to preload the files libmain.so, libmono.so and libunity.so into android system.So I tried to add the code to preload the libraries in Zygote process and make framework.jar. So I push the framework.jar into android system/framewrok, But the system will not load it success.
private static void preloadSharedLibraries() {
Log.e(TAG, "Preloading shared libraries...");
System.loadLibrary("android");
System.loadLibrary("compiler_rt");
System.loadLibrary("jnigraphics");
Log.e(TAG, "Preloaded shared libmain.so");
System.loadLibrary("main");
Log.e(TAG, "Preloaded shared libmono.so");
System.loadLibrary("mono");
Log.e(TAG, "Preloaded shared libunity.so");
System.loadLibrary("unity");
Log.e(TAG, "Preloaded shared libmain.so, libmono.so, libunity.so");
}
and the error log :
05-18 16:51:52.711 555 555 F DEBUG : pid: 1168, tid: 1340, name: Thread-9 >>> zygote <<<
05-18 16:51:52.711 555 555 F DEBUG : signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
05-18 16:51:52.727 555 555 F DEBUG : Abort message: 'art/runtime/java_vm_ext.cc:410] JNI DETECTED ERROR IN APPLICATION: java_class == null'
05-18 16:51:52.727 555 555 F DEBUG : r0 00000000 r1 0000053c r2 00000006 r3 eec74978
05-18 16:51:52.727 555 555 F DEBUG : r4 eec74980 r5 eec74930 r6 0000000b r7 0000010c
05-18 16:51:52.727 555 555 F DEBUG : r8 f536a800 r9 f517f378 sl 00000000 fp 00000000
05-18 16:51:52.727 555 555 F DEBUG : ip 00000006 sp eec74070 lr f734218d pc f7344588 cpsr 40070010
05-18 16:51:52.737 1166 1166 E mm-camera: s5k2m8_gt24c64_eeprom_format_calibration_data: 606: Factory ID : 0x3 Y/M/D : 16/4/26
05-18 16:51:52.738 1166 1166 E mm-camera: s5k2m8_gt24c64_eeprom_format_afdata: 304: OTP:AF: Macro DAC: 748, Infinity DAC: 144
05-18 16:51:52.738 1166 1166 E mm-camera: s5k2m8_gt24c64_eeprom_get_calibration_items: 71: is_wbc:1,is_afc:1,is_lsc:1,is_dpc:0,is_insensor:0,is_ois:0
05-18 16:51:52.738 555 555 F DEBUG :
05-18 16:51:52.738 555 555 F DEBUG : backtrace:
05-18 16:51:52.738 555 555 F DEBUG : #00 pc 00042588 /system/lib/libc.so (tgkill+12)
05-18 16:51:52.738 555 555 F DEBUG : #01 pc 00040189 /system/lib/libc.so (pthread_kill+32)
05-18 16:51:52.738 555 555 F DEBUG : #02 pc 0001c7e7 /system/lib/libc.so (raise+10)
05-18 16:51:52.738 555 555 F DEBUG : #03 pc 00019951 /system/lib/libc.so (__libc_android_abort+34)
05-18 16:51:52.738 555 555 F DEBUG : #04 pc 0001750c /system/lib/libc.so (abort+4)
05-18 16:51:52.738 555 555 F DEBUG : #05 pc 00321879 /system/lib/libart.so (_ZN3art7Runtime5AbortEv+212)
05-18 16:51:52.738 555 555 F DEBUG : #06 pc 000f3bfd /system/lib/libart.so (_ZN3art10LogMessageD2Ev+2212)
05-18 16:51:52.738 555 555 F DEBUG : #07 pc 0024f9ad /system/lib/libart.so (ZN3art9JavaVMExt8JniAbortEPKcS2+1524)
05-18 16:51:52.738 555 555 F DEBUG : #08 pc 0024fdb9 /system/lib/libart.so (_ZN3art9JavaVMExt9JniAbortFEPKcS2_z+68)
05-18 16:51:52.739 555 555 F DEBUG : #09 pc 002831cd /system/lib/libart.so (_ZN3art3JNI21RegisterNativeMethodsEP7_JNIEnvP7_jclassPK15JNINativeMethodib+3584)
05-18 16:51:52.739 555 555 F DEBUG : #10 pc 00283495 /system/lib/libart.so (_ZN3art3JNI15RegisterNativesEP7_JNIEnvP7_jclassPK15JNINativeMethodi+8)
05-18 16:51:52.739 555 555 F DEBUG : #11 pc 00004d98 /system/lib/libmain.so (JNI_OnLoad+96)
05-18 16:51:52.739 555 555 F DEBUG : #12 pc 0025027b /system/lib/libart.so (ZN3art9JavaVMExt17LoadNativeLibraryEP7_JNIEnvRKNSt3112basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEP8_jobjectPS9+1174)
05-18 16:51:52.739 555 555 F DEBUG : #13 pc 002c21ef /system/lib/libart.so (ZN3artL18Runtime_nativeLoadEP7_JNIEnvP7_jclassP8_jstringP8_jobjectS5+178)
05-18 16:51:52.739 555 555 F DEBUG : #14 pc 72f5d2c5 /data/dalvik-cache/arm/system@framework@boot.oat (offset 0x209e000)
Your answer
