`

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包名命名试试:
分享到:
评论
2 楼 gqdy365 2012-06-11  
weiday123 写道
在android中,这个是必须要符合这个规则的么?
有没有方法来绕过这个规则?

你自己先研究一下jni就知道了!
1 楼 weiday123 2012-06-07  
在android中,这个是必须要符合这个规则的么?
有没有方法来绕过这个规则?

相关推荐

    人脸检测,检测人睁闭眼睛,可以判断是否疲劳驾驶,代码是androidStudio+opencv工程 带android下JNI通过NDK编译so库文件。

    在Android系统中,.so文件包含了特定架构(如armeabi-v7a、arm64-v8a、x86等)的机器码,可供Java代码通过JNI接口调用。在这个项目中,"eyesDetectAndroidJNI"很可能就是包含人脸识别和眼睛检测功能的.so库文件。 ...

    Android之so文件、JNI和NDK

    6. **System-images**:提供Android模拟器所需的系统镜像文件。 7. **Tools**:包括ddms用于调试,draw9patch用于制作9-patch图片,sqlite3用于数据库操作,monkeyrunner用于自动化测试等。 接下来,NDK(Native ...

    android so打包封装.pdf

    标题《android so打包封装.pdf》所指向的知识点主要涵盖了Android平台中,将C/C++动态链接库(so文件)封装进Java的jar包,并能够从这个封装后的jar包中加载对应的so库文件,以供项目使用。 首先,需要了解Android...

    so文件的保护

    这样,即使有人获取到SO文件,也不能直接理解其中的内容。加密可以通过各种算法实现,如AES(高级加密标准)或者更复杂的自定义算法。在加载时,应用需要解密这些section,然后才能执行。 三、JNI接口安全 JNI接口...

    Android版TNN SO 动态库

    1. 将Android TNN SO库(.so文件)添加到项目的jniLibs目录下。 2. 在AndroidManifest.xml中添加必要的权限,如INTERNET权限,以便获取网络资源。 3. 引入TNN的Java或Kotlin API,加载模型,进行推理操作。 4. 处理...

    Android_Inline_Hook_ARM64,建立一个.so文件,自动执行android本地钩子的工作。支持ARM64!有了这个,像xposed这样的工具就可以实现android原生hook。.zip

    Android_Inline_Hook_ARM64 是一个开源项目,专门针对基于ARM64架构的Android设备设计,用于实现在原生层进行代码注入和钩子功能。这个项目的主要目的是模仿Xposed框架的功能,允许开发者在不修改系统应用源码的情况...

    android serial apk

    这个.so文件是Android的动态链接库,包含C或C++编写的原生代码,实现了与Android系统底层交互以进行串口通信的函数。在Android中,JNI(Java Native Interface)常用来调用这样的原生库,以实现Java无法直接完成的...

    Android应用开发者成长计划

    - 结合JNI(Java Native Interface)技术,在Linux环境下编写C/C++代码,并将其作为动态链接库(.so文件)供Android应用程序调用。 #### 五、JNI机制 JNI是Java Native Interface的缩写,用于实现Java代码与其他...

    android音频格式转换libmp3lame+flame

    1. 下载`libmp3lame`源码,并将其编译为适用于Android平台的动态链接库(`.so`文件),这个过程可能需要配置Android NDK环境。 2. 创建一个JNI层的C/C++接口,该接口暴露了`libmp3lame`的编码功能,使得Java代码可以...

    webrtc-android-jni

    标签"webrtc"表示与WebRTC项目有关,"android"指明了目标平台,"jni"意味着使用了JNI技术,"so"通常指的是Shared Object,是Linux系统下的动态链接库文件,对于Android来说,就是.so文件,其中包含了libwebrtc的原生...

    Android讯飞语音集成DEMO

    6. **SO库文件替换**:由于讯飞的SDK包含本地库(.so文件),你需要根据你的目标设备架构(armeabi、armeabi-v7a、arm64-v8a、x86等)选择对应的库,并将其替换到项目的`jniLibs`目录下。 7. **事件处理**:在使用...

    JniCheckSign:一个使用ndk检查签名md5值,防止其他人使用.so文件的演示

    如果.so文件被其他应用盗用,可能会导致安全漏洞、性能下降甚至数据泄露。因此,开发者需要一种方法来验证.so文件只在授权的APK中运行。 “JniCheckSign”项目的核心是利用C语言在NDK层进行签名验证。在Android应用...

    Android底层

    - **问题**: 在Android.mk文件中,如果我们想编译生成的文件为可执行程序,应该使用哪条命令? - **答案**: C. include $(BUILD_EXECUTABLE) - **解析**: `BUILD_EXECUTABLE`宏用于指定编译可执行文件的目标。这...

    android rsa jni 加密demo

    - 编译C/C++代码为共享库(`.so`文件),这通常通过NDK(Native Development Kit)完成。 - 在Android项目中添加库文件,并在Java代码中通过`System.loadLibrary()`加载。 5. **Android Studio与JNI**:现代...

    seetafaceso

    在Android中,JNI库通常以.so文件(共享对象文件)的形式存在,对应于Linux下的动态链接库。SeetaFaceSo这个名字暗示着它是一个动态链接库文件,用于在Android设备上提供本地接口以执行人脸检测和对齐的计算密集型...

    android JNI 安卓开发大全

    - 使用NDK的构建系统(如Android.mk或CMakeLists.txt)将C/C++代码编译为.so文件,确保正确链接到Android系统的库。 - 在Android设备上运行应用,Java代码调用native方法,通过JNI与C/C++代码交互,实现USB设备的...

    云知声离线语音合成语音播报sdk

    开发者需要将这个文件集成到自己的Android项目中,通过调用相关的API来实现语音合成和播报功能。 5. **armeabi目录**:armeabi是Android平台上的一种CPU架构,通常包含针对这种架构的优化二进制库。云知声SDK提供的...

    Android MetaioSDK和Demo

    开发者需要将这些库文件链接到Android项目中,以便在代码中调用SDK的API。 总结,Android MetaioSDK为开发者提供了一个强大且灵活的框架,用于构建功能丰富的增强现实应用。通过深入学习和实践`Example`中的代码,...

    android扫描二维码中文乱码

    在描述中提到,已经有人通过修改ZXing.jar中的解码类来适配GBK编码。这个过程通常包括以下步骤: 1. **解压ZXing.jar**:首先,我们需要将ZXing的JAR文件解压为一个包含源代码的目录结构,以便可以编辑其中的代码。...

    android使用ilbc库进行音频通话源码

    - 在Android中,ILBC库通常以动态链接库(.so文件)的形式存在,需要将其添加到项目的jniLibs目录下,供Java层调用。 - 需要使用JNI(Java Native Interface)技术来创建C/C++接口,使得Java代码可以调用ILBC的...

Global site tag (gtag.js) - Google Analytics