Java转Kotlin调用JNI方法异常

一、背景

Java调用JNI方法时没有任何问题,但是使用Java转Kotlin以后出现了崩溃异常:A java_vm_ext.cc:597] JNI DETECTED ERROR IN APPLICATION: jclass has wrong type:

校验参数后没有任何变化,经过分析验证找到解决方案

二、原因分析

当我们使用Android Studio默认转换一个Java调用JNI的类时,我们可以使用Tools-> Kotin

->Show Kolin Bytecode 再点击Decompile来查看转换Kotlin后与我们原有Java文件有和不同

二、解决方案

经过上述方案对比发现原来Java中的方法的static关键字被移除了,因此在方法名上增加@JvmStatic即可解决上述异常

Kotlin 复制代码
@JvmStatic
external fun stop()
相关推荐
寒山李白3 分钟前
Spring Boot面试题精选汇总
java·spring boot·后端·面试
若水晴空初如梦21 分钟前
QT聊天项目DAY14
开发语言·qt
幼稚园的山代王25 分钟前
python3基础语法梳理(一)
开发语言·python
BillKu1 小时前
Java解析前端传来的Unix时间戳
java·前端·unix
幼稚诠释青春1 小时前
面试实例题
java·开发语言
weixin_457665391 小时前
C++11新标准
开发语言·c++
阿蒙Amon1 小时前
C#封装HttpClient:HTTP请求处理最佳实践
开发语言·http·c#
cui_hao_nan1 小时前
多轮对话实现
java·语言模型
饼干ovo1 小时前
shell编程
java·git·github