Android环境下的HelloWorld命令行C程序
今天初步学习Android的NDK开发,突然想写一个HelloWorld程序在Android手机下面,这个可是最基础的C程序,不过是放在Android手机上跑而已。功夫不负有心人,网上果然有高人,居然找到和我一样想写HelloWorld的文章。于是,大胆放手去试试看,果然可以哈!
1、基本准备
(1)Eclipse (Mac OS X版本)
(2)NDK (Mac OS X版本)
(3)Terminal Emulator(Android手机上模拟终端的软件)
(4)SuperSU(Android手机上授予其他应用程序root权限的软件)
2、关于基本的NDK开发(类似HelloWorld),请看我的另一篇入门文章(这里),这里我直接贴代码了哈
清单1 - Android.mk
LOCAL_PATH := $(call my-dir)
include $(CLAER_VARS)
LOCAL_MODULE := hello
LOCAL_MODULE_FILENAME := hello
LOCAL_SRC_FILES := hello.c
include $(BUILD_EXECUTABLE)
清单2 - hello.c
#include <stdio.h>
#include <jni.h>
int main(int argc, char** argv)
{
printf("Hello, world!\n");
return 0;
}
将编译好的可执行文件hello,上传到Android手机上面的/data/local/bin,我的手机默认没有这个目录,我自己创建了一个(都用Eclipse的DDMS就可以轻松搞定了)。
最后,将hello文件的权限改成755,就可以执行了哈,上一张截图吧
参考资料:
1、http://vilimpoc.org/blog/2010/09/26/straightforward-android-native-executables/