android调用其他人的so文件

反编译了一个apk,里面有个so文件,想在自己的程序里面调用,结果一直报错:
java.lang.UnsatisfiedLinkError: Library faceBlend not found libXXXX.so
网上找了很多,大概原因如下:
比如你的包名com.android.test. 项目名:testActivity.

public native String gethello()

那么在.so中源文件的JNI函数名应该这么写jstring Java_com_android_test_testActivity_gethello(......)

所以你的工程必须有相同的包名及项目名才能直接用别人的.so文件。

那么按原有apk包名命名试试:

你可能感兴趣的:(系统层开发)