一切程序,从Hello开始 !
一.新建一个HelloNDK Android程序
二.创建好了后,应该是这样,顺便给TextView添加一个ID:
三. 在 com.example.hellondk下创建一个类MyNDK:
四. 修改MainActivity文件:
到这里,整个和Java相关的代码就写好了,运行下,程序运行出错,这是必然的,因为native的方法还没有实现呢.
下面介绍NDK层的东西.
一. 在项目文件夹根目录创建jni文件夹,
方法是: 右键项目文件夹 -> New -> Folder -> 命名jni
二. 在jni文件夹下创建Android.mk文件,编辑Android.mk文件
方法是:右键jni文件夹 -> New -> File -> 命名Android.mk
如果eclipse的CDT插件生效的话,Android.mk文件上会有双层圆圈图标.
三. 使用javah工具(如果配置了JDK的环境变量,cmd窗口可以直接使用javah)创建头文件;
(1) cmd窗口进入HelloNDK文件夹下
(2)执行以下命令: javah -classpath . -d ..\..\jni com.example.hellondk.MyNDK
这个时候,jni目录下就生成了com_example_hellondk_MyNDK.h 头文件.
回到eclipse,视图中可能还看不到.h文件,选中HelloNDK项目,按F5刷新,
四. 在jni文件夹下创建myndk.c文件
五. 在HelloNDK文件夹下,执行ndk-build,出现一个错误:
Android NDK: jni/Android.mk:mylib: LOCAL_MODULE_FILENAME should not include file extensions
Android NDK: jni/Android.mk:mylib: LOCAL_MODULE_FILENAME must not contain a file extension
C:/ProgramFilesMine/android-ndk-r9d/build/core/build-shared-library.mk:30: *** Android NDK: Aborting . Stop.
网上查找了一番,原来Android.mk文件要这么写:
重新ndk-build, 成功
六 在eclipse中右键项目-> Run As -> Android Application
至此,第一个NDK项目结束,洗洗睡了>..<