zoukankan      html  css  js  c++  java
  • android studio 3.4配置Android -jni 开发基础

    首先下载配置android studio ndk 

    1.打开sdkManager下载CMake和LLDB

     2.配置ndk

    项目新建

     项目建立完毕后,工程目录如下,cpp文件夹是系统自动生成的

    3.自定义 navite方法

    接下来开始写自定义的一个native方法,新建一个Hello.java文件,里面写一个add求和的native方法,如下 

    生成c++头文件 

    然后在windows控制台Terminal进入hello.java所在的目录执行javac hello.java,如下

     执行完毕后hello.java的同级目录下面会生成一个Hello.class文件,证明这一步成功啦! 

     然后还是在Terminal控制台上面回退目录到app/src/main下面执行命令 

    javah -d jni -classpath ./java com.example.myapplication.hello,后面是包名+文件名不带后缀,请改成自己的包名,如图

    命令执行完毕后会在app/src/main目录下面生成一个jni文件夹,文件夹下面有一个.h后缀文件,如图:

     新建cpp文件实现navtive 方法

     把

    com_example_myapplication_hello.h

    中的内容复制一份到myjni.cpp中,并添加

    com_example_myapplication_hello.h

    的引用(引用要改成引号,不然下面的方法会报红哦~),删掉其他代码,如图 

     经过测试Cmake必须将获得的建立在cpp文件才能编译通过

    配置CMakeLists.txt文件
    接下来是关键,在android studio3.0以前是没有此步骤的,大家看工程目录里面有一个CMakeLists.txt文件,这个文件是新建项目是自动生成的,里面已经写好了系统自动生成的
    cpp/native-lib.cpp文件的配置,打开CMakeLists.txt文件,如下,

     

     

    调用native方法

    到此我们基本上已经成功了,然后在Hello.java中添加代码如下,添加的library名字一定要和上图中添加的一样:

     

     最后在activity中调用add方法, 

     

    出错的地方总结:

    cmake 编译会经常提示编译失败

     出现cmake编译失败请在这里找寻错误

  • 相关阅读:
    【刷题】BZOJ 4059 [Cerc2012]Non-boring sequences
    【刷题】BZOJ 3745 [Coci2015]Norma
    【刷题】BZOJ 2734 [HNOI2012]集合选数
    【刷题】BZOJ 2287 【POJ Challenge】消失之物
    【刷题】BZOJ 2151 种树
    【刷题】BZOJ 2134 单选错位
    【刷题】BZOJ 1924 [Sdoi2010]所驼门王的宝藏
    【刷题】BZOJ 1823 [JSOI2010]满汉全席
    【刷题】BZOJ 1124 [POI2008]枪战Maf
    编程之美 ---> 1.2中国象棋将帅问题
  • 原文地址:https://www.cnblogs.com/xujunjia/p/11470622.html
Copyright © 2011-2022 走看看