我正在使用call recording
应用程序,我无法在某些设备(如Samsung S7,Gionee A1和其他一些Nougat设备)中录制传入语音。所以我决定将NDK用于此目的,并在libs文件夹中添加libmedia.so
和libutils.so
文件,因为这些.so文件是必需的,但是收到此错误
java.lang.UnsatisfiedLinkError:dlopen failed:library" /system/lib64/libmedia.so"需要或倾斜于" /system/lib64/libnativeloader.so"命名空间" classloader-namespace"
无法访问
请提前帮助我解决此问题。
答案 0 :(得分:0)
听起来你已经知道这一点,但以防万一:
libmedia不是NDK API,在Android N中限制了对Android实施细节的访问:https://developer.android.com/about/versions/nougat/android-7.0-changes#ndk
您需要在应用程序中使用公共API(可以在NDK中访问这些API而无需extern
或从设备中删除库。)
并在libs文件夹中添加了libmedia.so和libutils.so文件
什么是libs文件夹?如果它是APK中的lib文件夹,那么这些库应该是您的应用程序加载的库,而不是/ system / lib64中的库。你确定你在APK的正确路径中找到了它们吗?