• Android NDK开发环境安装(OK版)


    NDK对于Android开发人员走向高手是不可缺少的利器,如果你说搞Android开发很NB,但连NDK都不会,别人会不以为然的,另外会搞NDK也会给你面试加分,再者以后Android平台上的3D游戏会比较流行,到了那个时候,相信NDK一定可以大行其道。。。。 好了,废话不说,直接看下面。。。 

     

    安装流程

    1. 安装JDK.

    2. 安装Eclipse(eclipse-cpp-indigo-SR1-incubation-win32.zip,解压即可使用。注:该版本集成CDT)

    3. 搭建Android开发环境(参考文档:http://developer.android.com/sdk/installing.html

      3.1  安装Android SDK(installer_r16-windows)

      3.2  安装Eclipse的ADT插件.

               3.2.1  启动Eclipse, 选择菜单项的Help->Install New Software

               3.2.2  点击Add, 输入名称,然后在URL中输入:

                         http://dl-ssl.google.com/android/eclipse/,OK!

               3.2.3  选择需要更新的工具,Finish, 安装完成后重启Eclipse。

    3.3  配置ADT插件

           3.3.1  启动Eclipse,选择菜单项的Window -> Preferences

           3.3.2  选择Android,在SDK Location中选择SDK的安装目录,OK!

    完成后重新启动Eclipse。

           3.4  添加平台和其他组件

                  3.4.1  启动Eclipse,选择菜单项的Window -> Android SDK Manager

                  3.4.2  根据实际需要选择相应组件,然后点击install。

                           默认可安装以下组件,如图一所示:

     

                                                                    (图一)

                  3.4.3  创建一个Android 虚拟设备。选择菜单项的Window ->AVD Manager.

                  New ,新建一个虚拟设备,具体参数请自行设置。如图二所示:

    4. 安装NDK(R7, android-ndk-r7b-windows.zip, 解压即可使用)

    注:R7之前的版本,必须要安装Cygwin才能使用NDK。从R7开始,Windows版本的NDK提供了一个ndk-build.cmd脚本,可以直接利用这个脚本编译。想要做到这一点,只要为Eclipse Android工程添加一个Builder,就能实现Eclipse的自动编译NDK。

     

                (图二)

    5.  NDK实例的实现

    5.1   启动Eclipse,新建Android工程(此处名为TestNDK),如图三所示:

     

                                                  (图三)

    5.2  在TestNDK工程的根目录下新建文件夹jni,之后找到NDK的安装目录(\samples\hello-jni\jni)下的 Android.mk和hello-jni.c 这两个文件,将其拷贝到TestNDK->jni文件夹下面。

    5.3   找到NDK的安装目录(\samples\hello-jni\src\com\example\hellojni)下的HelloJni.java文件,将其拷贝到TestNDK工程src文件夹对应的包下。

    5.4  修改项目文件AndroidManifest.xml,将activity标签下的 android:name =“.TestNDKActivity”修改为 android:name =“.HelloJni”。(注:此处的

    TestNDKACtivity为项目自动生成的,项目不同,此处也会不同)  

    5.5   新建并配置一个Builder

    5.5.1        点击Project->Properties->Builders->New,新建立一个Builder。在弹出的对话框上面点击Program,OK!如图四所示:

     

                                                         (图四)

    5.5.2       在弹出的对话框【Edit Configuration】中,配置选项卡【Main】:

    Location中需要填入nkd-build.cmd的路径(NDK安装目录下)。

    Working Diretcoty中需要填入TestNDK的工程根目录。

    如图五所示:

    5.5.3      在弹出的对话框【Edit Configuration】中,配置选项卡【Refresh】:

    勾选“Refresh resources upon completion”,

    勾选“The entire workspace”,

    勾选“Recuresively include sub-folders”。

     

                                                             (图五)

    5.5.4       在弹出的对话框【Edit Configuration】中,配置选项卡【Build Options】:

    勾选“After a “Clean””,

    勾选“During manual builds”,

    勾选“During auto builds”,

    勾选“Specify working set of relevant resources”。

    点击“Specify Resources…”勾选TestNDK工程的“jni“目录 ,Finish!

    保存设置,OK!

    5.5.5       右键点击工程TestNDK,Build Project。当在console里面看到如图六所示的信息,则表示一切正常,此时就已经是自动编译代码了。

     

                      (图六)

    5.5.6      右键点击工程TestNDK,Run As -> Android Application, 运行程序。当出

    现图七所示信息时,NDK实例运行成功!

     

                       (图七)                                 

    6.   可能出现的问题 

          如图八所示:

     

                                   (图八)

    在 c 文件中,函数名这样定义:

    Java_testNDK_android_HelloJni_stringFromJNI ,是因为这个是 JNI 的标准,定义需要按照如下格式:

           Java_packagename_classname_methodname ,

           例如: Java_testNDK_android_HelloJni_stringFromJNI

     

    —————————————————分割线—————————————————

     

    由于本人水平有限,所写文字肯定会有不妥之处,欢迎牛人指出答疑,我就在此抛砖引玉了,谢谢~

     

    欢迎转载,转载请注明转自:http://www.cnblogs.com/xiaomiao

    分类: NDK
    有些东西会,但不精通,而我现在要做的就是精通,复习回顾,整理自己的框架,举一反三。。。
  • 相关阅读:
    《深度学习推荐系统中各类流行的Embedding方法(上)》
    《替代梯度下降——基于极大值原理的深度学习训练算法》&《加速对抗训练——YOPO算法浅析》
    《【炼丹技巧】功守道:NLP中的对抗训练 + PyTorch实现》
    《论文阅读:对抗训练(adversarial training)》
    《一文搞懂NLP中的对抗训练》
    CLOUD配置审批流发消息
    CLOUD财务成本核算
    K3CLOUDJOBPROCESS每分钟重启
    查看服务器日志
    数据规则列表加导入导出
  • 原文地址:https://www.cnblogs.com/liuzenglong/p/2622528.html
Copyright © 2020-2023  润新知