如何在Android系统源码中添加C项目
1个回答
展开全部
以hello_android为例,步骤如下:
1、在external目录下创建hello_android目录,然后在hello_android目录中编写hello_android C语言实现文件hello_android.h,hello_android.c:
(注:hello_android目录可以放置在Android系统源码下的任意目录中,并非一定要在external下。)
hello_android.h
#include<stdio.h>
#include<stdlib.h>
void makePrintf(char *str)
{
printf("%s", str);
}
hello_android.c
#include <stdio.h>
#include <stdlib.h>
#include "hello_android.h"
int main(int argc, char** argv)
{
makePrintf("hello, android!\n");
return 0;
}
2、编写负责编译的Android.mk文件:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := hello_android.c
LOCAL_C_INCLUDES += $(LOCAL_PATH)
LOCAL_MODULE := hello_android
LOCAL_MODULE_TAGS := eng
include $(BUILD_EXECUTABLE)
3、利用mm编译生成hello_android二进制可执行文件;
4、将helllo_android文件复制到/system/bin目录下执行:
#./hello_android
hello, android!
5、代码结构
$ pwd
external/hello_android
$ tree
1、在external目录下创建hello_android目录,然后在hello_android目录中编写hello_android C语言实现文件hello_android.h,hello_android.c:
(注:hello_android目录可以放置在Android系统源码下的任意目录中,并非一定要在external下。)
hello_android.h
#include<stdio.h>
#include<stdlib.h>
void makePrintf(char *str)
{
printf("%s", str);
}
hello_android.c
#include <stdio.h>
#include <stdlib.h>
#include "hello_android.h"
int main(int argc, char** argv)
{
makePrintf("hello, android!\n");
return 0;
}
2、编写负责编译的Android.mk文件:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := hello_android.c
LOCAL_C_INCLUDES += $(LOCAL_PATH)
LOCAL_MODULE := hello_android
LOCAL_MODULE_TAGS := eng
include $(BUILD_EXECUTABLE)
3、利用mm编译生成hello_android二进制可执行文件;
4、将helllo_android文件复制到/system/bin目录下执行:
#./hello_android
hello, android!
5、代码结构
$ pwd
external/hello_android
$ tree
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询