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()
相关推荐
巨龙之路2 小时前
C语言中的assert
c语言·开发语言
2301_776681653 小时前
【用「概率思维」重新理解生活】
开发语言·人工智能·自然语言处理
熊大如如3 小时前
Java 反射
java·开发语言
猿来入此小猿4 小时前
基于SSM实现的健身房系统功能实现十六
java·毕业设计·ssm·毕业源码·免费学习·猿来入此·健身平台
ll7788114 小时前
C++学习之路,从0到精通的征途:继承
开发语言·数据结构·c++·学习·算法
我不想当小卡拉米4 小时前
【Linux】操作系统入门:冯诺依曼体系结构
linux·开发语言·网络·c++
teacher伟大光荣且正确4 小时前
Qt Creator 配置 Android 编译环境
android·开发语言·qt
炎芯随笔4 小时前
【C++】【设计模式】生产者-消费者模型
开发语言·c++·设计模式
goTsHgo4 小时前
Spring Boot 自动装配原理详解
java·spring boot
卑微的Coder4 小时前
JMeter同步定时器 模拟多用户并发访问场景
java·jmeter·压力测试