android 9.0 java.lang.UnsatisfiedLinkError: dlopen failed: library 第三方引用库报错
由于公司需求,需做一个应用直接调用系统的api接口调节背光,执行程序时提示libhitvclient.so找不到;android 7.0以下的都没遇到这种问题,只能网上搜资料;最后在http://blog.csdn.net/ngyzqf/article/details/78991929一篇博客中看到了希望;感兴趣的同学可以进去看看,感谢这位博客的无私共享,谢谢。
运行时报java.lang.UnsatisfiedLinkError: dlopen failed: library “/system/lib/libhitvclient.so” needed or dlopened by “/system/lib/libnativeloader.so” is not accessible for the namespace "classloader-namespace"的错误信息,并使整个应用程序崩溃。
以下是我解决问题的操作:
修改路劲在out目录下;
期初我在out目录下的/system/etc/public.libraries.txt, 文件中直接添加该so的全名 ,即我的libnativeloader.so,然后重新烧录程序,此时不但问题没有解决,还导致整个程序进不去;
以下是public.libraries.txt下的内容
libandroid.so
libaaudio.so
libc.so
libcamera2ndk.so
libdl.so
libEGL.so
libGLESv1_CM.so
libGLESv2.so
libGLESv3.so
libicui18n.so
libicuuc.so
libjnigraphics.so
liblog.so
libmediandk.so
libm.so
libnativewindow.so
libOpenMAXAL.so
libOpenSLES.so
libRS.so
libstdc++.so
libsync.so
libvulkan.so
libwebviewchromium_plat_support.so
libz.so
最后我把out目录下的/system/etc/public.libraries.txt整个文件拷贝到/vendor/etc路劲下,再添加该so的全名libnativeloader.so;system目录下的文件不去修改,这样问题就解决了