2011.12.05(2)——— android JNI学习之一环境搭建
最近比较忙,在做一个音视频的展示,接触到了比较多的JNI,确确实实把我逼疯了,在此,记录一下自己的经验吧
1、下载
ndk
http://dl.google.com/android/ndk/android-ndk-r6b-windows.zip
vmware虚拟机
http://44.duote.com.cn/ha_vmware.exe
ubuntu
http://china-images.ubuntu.com/releases/11.10/ubuntu-11.10-desktop-i386.iso?arch=i386&bits=32
2、在vm上面安装ubuntu
参见 :
http://wenku.baidu.com/view/e1d7c66aa98271fe910ef9e5.html
或者
http://apps.hi.baidu.com/share/detail/48131661
网上一搜 很多
很详细 就不罗嗦了
3、配置ndk
参见
http://blog.csdn.net/zhanghw0917/article/details/6063763
主要的步骤就是
A:解压ndk文件到ndk目录
B:为ndk-build设置环境变量
修改你的.bashrc 文件
$ vi ~/.bashrc
在最后添加
export NDK_HOME=/workspace/ndk/ndkr4/
export PATH=$PATH:$NDK_HOME
保存退出。
让设置马上生效
$ source ~/.bashrc
C:测试一下
$ ndk-build
ndk-build
Android NDK: Could not find application project directory !
Android NDK: Please define the NDK_PROJECT_PATH variable to point to it.
/workspace/ndk/ndkr4/build/core/build-local.mk:85: *** Android NDK: Aborting . Stop.
只要不是 command not found 你就是成功了,不用管报不报错
4、编译ndk例子
在NDK_HOME的根目录下有个samples/hello-jni/例子
进入 该文件夹
运行
$ ndk-build
就会发现 多了libs和obj两个文件夹 在libs下面就是你的so库了
分享到:
相关推荐
综上,"I2CJNI.rar"提供了一个使用Android JNI进行I2C通信的实践案例,对于学习如何在Android平台上通过JNI访问硬件资源,尤其是与I2C设备交互的开发者来说,这是一个宝贵的参考资料。通过研究这个项目,开发者可以...
META-INF/MANIFEST.MF com.ice.jni.registry.HexNumberFormat.class com.ice.jni.registry.NoSuchKeyException.class com.ice.jni.registry.NoSuchValueException.class com.ice.jni.registry.RegBinaryValue.class ...
在Android开发中,JNI(Java Native Interface)是一个关键的组件,它允许Java代码与其他语言(如C++或C)编写的代码进行交互。这个“Android--JNI-Device.zip”文件显然是一个关于Android平台上使用JNI与硬件设备...
本资料"AndroidJNI.rar_Android jni_android"可能包含一个简单的示例项目——HelloWorld,用于教学如何在Android应用中使用JNI。 首先,我们来理解JNI的基本概念。JNI是一套接口,使得Java虚拟机(JVM)能够调用...
com.ice.jni.registry.RegMultiStringValue.class com.ice.jni.registry.RegBinaryValue.class com.ice.jni.registry.RegistryException.class com.ice.jni.registry.NoSuchValueException.class ...
这篇“Android学习笔记——利用JNI技术在Android中调用、调试C++代码”将带你深入理解如何在Android应用中使用JNI来调用C++代码,以及如何进行调试。以下是对这一主题的详细阐述。 1. **JNI简介** JNI是Java平台的...
JNI,全称Java Native Interface,...在提供的压缩包`jni.zip`中,包括了`jni.h`和`jni_md.h`两个头文件,它们是进行JNI编程的基础。开发者可以下载这些文件,以便在自己的项目中引用,从而实现Java和本地代码的交互。
Android JNI(Java Native Interface)是Android系统中一个重要的技术,它允许Java代码和其他...提供的文档如"JNI.doc"、"JNIDocumentChinese.pdf"和"anroid native 开发.ppt"将进一步帮助初学者理解和掌握JNI的细节。
在`src/main/cpp`目录下,创建一个`hello-jni.cpp`文件,实现`stringFromJNI`方法: ```cpp #include <jni.h> #include "com_example_app_HelloJNI.h" JNIEXPORT jstring JNICALL Java_...
AndroidStudio环境下的jni调用(NDK),这个教程可以让完全不会AndroidStudio的人学会jni调用。完全步骤话,非常简单。
本资源“jni.zip_Android jni_android_jni_jni android”包含了一份关于Android环境下JNI使用的详细指南。 JNI的核心概念主要包括以下几个方面: 1. **本地方法接口**:JNI定义了一套API,使得Java代码可以调用C/...
本压缩包"jni.rar"包含了一系列关于Android平台下JNI使用的资料,尤其涉及到动画(Animation)的实现和mk文件的运用。 首先,我们来深入了解一下JNI。JNI是Java平台为了解决纯Java应用程序无法高效执行特定任务,如...
在Android开发中,JNI(Java Native Interface)是一个关键的技术,它允许Java代码和其他语言写的代码进行交互。JNI在很多场景下都非常有用,比如优化性能、使用现有的C/C++库、或者像在这个“JniCallback.zip”文件...
接下来,在jni目录下创建一个头文件(hello-jni.h),定义Java中的本地方法签名: ```c #ifndef HELLO_JNI_H #define HELLO_JNI_H #include <jni.h> JNIEXPORT jstring JNICALL Java_...
这个"android_jni.rar"压缩包提供了一份关于Android JNI编程的基本文档,对想要深入学习Android底层开发的朋友们来说,是一份非常有价值的参考资料。 1. **JNI简介**: JNI是Java平台的一部分,为Java程序员提供了...
Android JNI(Java Native Interface)是Android平台上的一个关键特性,它允许Java代码和其他语言写的代码进行交互,通常用于提升性能、调用系统底层库或利用C/C++的库。在这个"android JNI学习三实例"中,我们将...
标题中的"RFID.tar.gz_Android jni_android_android RFID_android rfid_rfid"提到了几个关键概念:RFID(Radio Frequency Identification,射频识别技术)、Android JNI(Java Native Interface,Java本地接口)、...
Android JNI(Java Native Interface)是Android平台上的一个重要概念,它为Java代码与本地(C/C++)代码交互提供了桥梁。JNI在Android应用开发中的角色日益重要,尤其在处理高性能计算、图形渲染、游戏开发以及利用...
Android 通过 JNI(Java Native Interface)调用.so 动态库是 Android 开发中的一种常用技术。JNI 是一种允许 Java 代码与 native 代码之间进行交互的接口。通过 JNI,我们可以在 Android 项目中调用.so 动态库中的 ...
在这个“java_jni_mytest.tar.gz_android_jni”压缩包中,包含了一个专门为初学者准备的Android JNI编程实例,帮助开发者更好地理解和应用JNI技术。 首先,让我们了解JNI的基本概念。JNI是Java平台标准的一部分,它...