zoukankan      html  css  js  c++  java
  • 【环境配置】配置ndk

    1. 背景

    Android平台从诞生起,就已经支持C、C++开发。

    众所周知,Android的SDK基于Java实现。这意味着基于Android SDK进行开发的第三方应用都必须使用Java语言。但这并不等同于“第三方应用仅仅能使用Java”。在Android SDK首次公布时,Google就宣称其虚拟机Dalvik支持JNI编程方式。也就是第三方应用全然能够通过JNI调用自己的C动态库,即在Android平台上,“Java+C”的编程方式是一直都能够实现的。

    只是,Google也表示。使用原生SDK编程相比Dalvik 虚拟机也有一些劣势,Android SDK文档里,找不到不论什么JNI方面的帮助。即使第三方应用开发人员使用JNI完毕了自己的C动态链接库(so)开发,可是so怎样和应用程序一起打包成apk并公布?这里面也存在技术障碍。比方程序更加复杂。兼容性难以保障。无法訪问Framework API。Debug难度更大等。开发人员须要自行斟酌使用。

    于是NDK就应运而生了。

    NDK全称是Native Development Kit。

    NDK的公布,使“Java+C”的开发方式最终转正,成为官方支持的开发方式。NDK将是Android平台支持C开发的开端。

    NDK是由Android提供的编译本地代码(C、C++)的工具,主要用于使用JNI开发Android app。


    2. 配置

    (1) 下载

    从android ndk官网http://developer.android.com/sdk/ndk/index.html下载ndk,眼下最新版本号为android-ndk-r6b-linux-x86.tar.bz2

    (2) 解压ndk到工作文件夹

    $ tar -xvf android-ndk-r6b-linux-x86.tar.bz2

    $ sudo mv android-ndk-r6b /usr/local/ndk

    (3) 环境变量设置

    $ sudo vim /etc/profile

    export PATH=/usr/local/ndk:$PATH

    编辑完毕后保存退出,并重新启动生效。

    (4) 验证安装

    $ cd /usr/local/ndk/samples/hello-jni/

    $ ndk-build

    Gdbserver : [arm-linux-androideabi-4.4.3] libs/armeabi/gdbserver

    Gdbsetup : libs/armeabi/gdb.setup

    Install : libhello-jni.so => libs/armeabi/libhello-jni.so

  • 相关阅读:
    怎么保存退出vi编辑
    rpmlib(PayloadIsLzma) <= 4.4.6-1 is needed【转载】
    自制rpm包
    程序员应该具备的十个代码习惯
    面试时可以问的问题
    Git教程(二)-如何上传和同步自己的git项目
    Git教程及问题解析
    HTML5调用百度地图API进行地理定位实例
    PHP基于单例模式编写PDO类的方法
    PHP输出缓存ob系列函数详解
  • 原文地址:https://www.cnblogs.com/gavanwanggw/p/6718980.html
Copyright © 2011-2022 走看看