背景:JNI接口名称静态注册的时候往往需要书写很长的名称,接口名称可以通过javah生成、AS自动导入或者手动书写,当手动书写错误时候,编译并不会报错,
这个错误会带到运行时,此时发现已经晚了
措施:利用AS自带的代码检测工具进行检查
检测时机:编译前
检测步骤:
-
build.gradle配置ndk编译配置,如下图
捕获.PNG -
sync project with gradle
跨语言(含有C++语言)、跨Module的项目一般修改后,要同步一下。 -
工具栏->code->inspect code -> ok
捕获.PNG -
执行完成后 结果如下
捕获.PNG
明确提示jni函数找不到
当项目ndk和java主工程分开编译时,可以在最终提交前 将 ndk编译配置加到gradle,然后静态检测下 再去除配置 提交代码。
网友评论