Android之java.lang.UnsatisfiedLinkError(Failed to register native method ***callMethod1())解决办法

本文介绍了在Android开发中遇到的`java.lang.UnsatisfiedLinkError`错误,具体表现为`Failed to register native method callMethod1()`。问题根源在于JNI注册方法时参数写错,原注册方式缺少返回值类型。正确做法是在注册时添加返回值"()V",对应Java和C中的void。修正后问题得以解决。
摘要由CSDN通过智能技术生成

1、问题

Failed to register native method com.example.chenyu.test.JniClient.callMethod1()

 

java.lang.UnsatisfiedLinkError: JNI_ERR returned from JNI_OnLoad in "/data/app/com.example.chenyu.test-2/lib/arm/libFirstJni.so"

如下图

 

 

 

 

2、解决办法

原因:是因为我注册的时候参数写错了

函数是这样的

 

void callMethod1(JNIEnv* env, jobject thiz) {
	LOGD(TAG, "this is jni call1");
}


我注册的时候是这样写的

 

 

/**
* 方法对应表
*/
static JNINativeMethod gMethods[] = {
        
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码莎拉蒂 .

你的鼓励是我最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值