Android NDK用Android studio开发步骤:

1.先在类中写一个native本地方法,例如(static非必须,只为调用方便):

1 public class JniTest {
2         static {
3             System.loadLibrary("JniTest"); //跟下面moduleName名字要一致
4                }
5            public static native String getString(String s);
6         }

2.然后rebuild probject,在项目app/build/intermediates/classes/debug/包名下,会生成上面类名.class,

打开命令窗口,cd到项目\app\build\intermediates\classes\debug下,输入命令:javah -jni 包名.JniTest,

会在debug下生成 包名_JniTest.h的头文件,在app/src/main下创建文件夹jni,剪切上面头文件到jni下

3.根据头文件在jni下创建JniTest.c

1 #include <jni.h>
2 jstring Java_com_okdrive_others_JniTest_getString
3         (JNIEnv *env, jclass j,jstring s){
4     return s;
5 }

4.在build.gradle里添加

1  defaultConfig {
2         ndk {
3             moduleName "JniTest"          //生成的so名字
4             abiFilters "armeabi", "armeabi-v7a", "x86" //输出指定三种abi体系结构下的so库,目前可有可无。
5             }
6     }

5.调用

1 textView.setText(JniTest.getString("这是JniTest测试"));

6.运行,没问题的话就看到结果了

7.so包:会在app\build\intermediates\ndk\debug\lib下生成上面ndkabiFilters对应的三个文件夹

打开任意一个可以看到so库

这就是我们平时直接调用的so库,把这些文件夹放到其他项目的app\src\main\jniLibs,

把1里面的类放到src对应包里,调用1类即可。

8.全程注意包名要一致!

转载于:https://www.cnblogs.com/gengchangjing/p/5230567.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值