我试图通过这种方式在里面加载lib:
getBundledStackLibFile():
PackageInfo packageInfo = ctx.getPackageManager().getPackageInfo(ctx.getPackageName(), 0);
if(packageInfo != null) {
ApplicationInfo appInfo = packageInfo.applicationInfo;
File f = getLibFileFromPackage(appInfo, libName, true);
return f;
}
// This is the very last fallback method
return new File(ctx.getFilesDir().getParent(), "lib" + File.separator + libName);
然后我使用绝对路径来使用该 .so 文件:
File openslLib = getBundledStackLibFile(activityForUsing,
"libpj_opensl_dev.so");
audImp.setShared_lib_path(pjsua.pj_str_copy(openslLib.getAbsolutePath()));
但我有错误:
10-01 10:53:11.209:无法打开:/data/data/com.myApp.android/lib/libpj_opensl_dev.so 无法加载库:link_image [1995]:无法链接 libpj_opensl_dev.so
这是解压缩的 ark 文件(所有目录中都提供了必要的库,屏幕简短只是示例。