博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android studio开发jni无法生成so文件
阅读量:3989 次
发布时间:2019-05-24

本文共 413 字,大约阅读时间需要 1 分钟。

在交叉编译的时候怎么都无法生成so文件,javah生成头文件没错,c文件也没错,java文件也没错,

原因是JNI文件夹路径不对

在执行javah命令时,我进入的是cd app/src/main/java 这样jni文件夹在java文件夹下,作为一个包存在,这样就无法生成so文件

执行javah的正确姿势:

进入app/src/main目录:cd app/src/main

执行javah命令:javah

javah -d jni -classpath ./ lab.sodino.jnitest.MainActivity 

-d jni 头文件生成到jni文件夹(当前在<Project>\app\src\main目录下,所以.h所在的目录为<Project>\app\src\main\jni 

-classpath ./java 指定去当前路径下java下寻找包名指定的类

这样再rebuild一下,就会生成so文件了

转载地址:http://xcxui.baihongyu.com/

你可能感兴趣的文章
C++ 引用类型
查看>>
flutter-实现本地存储(sharePreference)
查看>>
flutter-实现圆角带边框的view(android无效)
查看>>
flutter-实现一个下拉刷新上拉加载的列表
查看>>
android 代码实现圆角
查看>>
postman调试webservice接口
查看>>
retrofit调试webservice(注意只是调试,没对结果进行处理)
查看>>
flutter-解析json
查看>>
android中shader的使用
查看>>
java LinkedList与ArrayList迭代器遍历和for遍历对比
查看>>
Android DataBinding使用1-普通页面
查看>>
Android DataBinding使用2-Recycleview
查看>>
Dart数据类型
查看>>
drat中构造方法
查看>>
JavaScript的一些基础-数据类型
查看>>
JavaScript基础知识(2)
查看>>
重温activity生命周期
查看>>
转载一个webview开车指南以及实际项目中的使用
查看>>
关于activity保存页面状态的两个方法
查看>>
android中对于非属性动画的整理
查看>>