问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何在Android系统源码中添加C项目

发布网友 发布时间:2022-04-23 12:48

我来回答

1个回答

热心网友 时间:2023-06-30 11:31

  以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
如何在Android系统源码中添加C项目

1、在external目录下创建hello_android目录,然后在hello_android目录中编写hello_android C语言实现文件hello_android.h,hello_android.c:(注:hello_android目录可以放置在Android系统源码下的任意目录中,并非一定要在external下。)hello_android.h include&lt;stdio.h&gt; include&lt;stdlib.h&gt; void makePrintf(...

如何在Android系统上运行C语言的程序

1. 查看可执行文件xlisten-arm所需要的动态链接库:执行语句:2. 将程序编译的时候选择静态编译,即使用选项 -static 对Makefile文件中的CFLAG变量进行修改:CFLAGS = -Wall 改为:CFLAGS = -Wall -static 3. 在Makefile中,修改LIBS变量:LIBS = -lsqlite3 -lm -lcrypt 改为:LIBS ...

手机如何运行c需要代码

对于 Android 系统的手机,我们可以通过安装 Termux 应用程序来获得命令行环境。在 Termux 中,我们可以使用命令:pkg install clang 来安装 C 语言编译器。2. 编写 C 代码 安装好 C 语言编译器之后,我们就可以在手机上编写 C 代码了。在 Termux 中,可以使用 Vim 或者 Nano编辑器来编辑 C 代码文...

Android 文件系统中添加文件及添加系统属性

android是linux系统,文件系统有很严格的权限设置,如果你的apk没有root权限那么你只能在有限的地方如sdcard目录下读写文件 至于读写文件的方法,最简答的在java上直接用FileInputStream类就可以 如果是ril层用c/c++的话,在ndk下直接用fopen fwrite就行了 所以核心问题是你的apk应用有没有权限来读写sys...

怎么在Android.mk里面添加大量的源文件

我们可以使用通配符来解决大量的源文件添加到Android.mk的问题:第1行是使用GNU Make函数wildcard来查找所有目录下面的文件,这里查找的是"当前项目路径/foo"目录下面的所有的“.c”文件,第2行会把所有找到的文件名中的$(LOCLA_PATH)路径给去掉,只剩下foo/*.c类似的名字。MY_FILES := $(wildcard...

如何单独编译Android源代码中的模块

一. 首先在Android源代码目录下的build目录下,有个脚本文件envsetup.sh,执行这个脚本文件后,就可以获得一些有用的工具:USER-NAME@MACHINE-NAME:~/Android$ . ./build/envsetup.sh 注意,这是一个source命令,执行之后,就会有一些额外的命令可以使用:- croot: Changes directory to the top of ...

使用C语言开发跨平台(win/android)应用(PainterEngine 快速入...

在Android环境中,使用Android Studio进行开发。创建新项目,复制PainterEngine的AndroidManifest.xml和CMakeList到项目目录下,将平台框架代码复制到指定文件夹中,并在CMakeLists.txt中配置PainterEngine路径、工程代码路径等信息。通过Link C++ Project With Gradle连接C++项目,选择CMakeLists.txt文件,然后运行...

如何在android的源代码中添加persist属性

需要import android.provider.Settings;android源码开发中,常常要用到一些全局标志或者说变量,这时候我们可以给android系统添加自己想要的属性。1.Settings.system 这种系统属性我们经常用到,例如飞行模式的开启和关闭,我们就是去改变Settings.system.AIRPLANE_MODE_ON 的值。下面就介绍下我们怎样去定义一个...

如何在android源代码中打印出日志

1:在编译so文件的c或cpp文件之前中加入以下代码,就可以在android中的log显示日志内容 include define LOG_TAG "show infomation"define LOGW(a ) __android_log_write(ANDROID_LOG_WARN,LOG_TAG,a)2:就可以在c或cpp中加入LOWG(str) 就可以在android中的log中显示打印的内容 3.这样写完以后,...

如何为Android系统添加一个新的资源包

通过为Android添加一个新的独立的资源包,可以将厂商定制资源独立出来,可移植、可维护性非常好。具体做法可以分为以下几个步骤:1. 修改build/core/clear_var.mk LOCAL_USE_LETV_FRAMEWORK_RES:= true 2. 修改build/core/package.mk 以下脚本可以加在 $(R_file_stamp): $(framework_res_package_...

android项目源码 android小项目源码 android项目实例源码 android简易小项目源码 android经典简单小项目源码 如何查询安全C证在什么项目上 android应用源码 android成品源码 护士长在管理中C类项目是什么
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
风湿性关节炎是自身免疫病吗 类风湿与风湿性关节炎的区别 大腿有鸡皮怎么去除 长得很一般,问问大神我适合什么发型 我还是高中生 别太... 投资总额与注册资本一直要符合比例吗 风湿病与类风湿病的区别 ...我的脸型也比较长的那种。想问问适合剪什么发型? ...做什么都没勇气,想问问大家我适合什么样的发型,能把脸变得看起来_百... ...剪成短发,她头发挺多的. 问问什么发型比较适合 风湿性关节炎是自身免疫性疾病吗? 工程项目分类A类、B类、C类、D类项目是指什么?注意:不是资料的A、B、C类报建资料 Microsoft visual c++ 2010学习版 如何新建c项目? 什么是C类项目 携程上改签不成功因为12306有未完成订单是为什么? 12306火车票未完成的订单取消不了,急求解决方法 12306改签到一半退出怎么继续改签吧? 火车票改签未完成,取消改签后还能再改签么?? 孕妇做梦,梦到鸡蛋。 孕妇梦见鸡,有什么说法? 能拍照和录像的手机是什么时候普及的? 比亚迪汉dm为什么跑高速发动机灯会亮我比亚迪汉dm跑高速总会发动机变亮了,这是什么原因?_百度问一问 比亚迪汉dm馈电顿挫? 据说比亚迪汉DM特别省油,请问它的动力性能怎么样? 比亚迪汉DM试驾,或许是目前最便宜的性能家轿,猛烈又划算 外观大气,纯电续航里程达81km,比亚迪汉DM怎么样? 不可忽视的比亚迪汉DM,纯电续航81km 怎么有效解决比亚迪汉DM车型电量低时发动机噪声大的问题? 比亚迪汉dm和dmi会有什么区别,有没有必要因为dmi放弃dm? 试驾|拥堵、雨天、亏电!城市实测比亚迪汉DM,油耗是真的良心 【车主点评:我的第一台新能源,比亚迪汉DM】 c语言项目注册功能怎么写 请问一下C语言编写项目整体流程是什么样子的? 手机管家垃圾清理把视频删了,怎么恢复 手机垃圾清理删除的文件还能恢复么 弹花机的工作原理 腾讯手机管家清理垃圾的时候直接清理掉了我的相册图片,请问要如何恢复? 梳理机和精细弹花机有什么不同 手机管家在专项清理中把照片全部删除了,如何恢复? 你好,微信里的图片被手机管家清理了怎么恢复? 精细弹花机和吸尘弹花机有什么不同 请问手机管家清理垃圾怎么会把照片删除掉,要怎么恢复 我用OPPO自带的手机管家清理垃圾时删除了很多照片,可以恢复吗? 精细梳理和弹花梳理一体机的区别 梳理机的价格报表 60精细弹花机和170精细弹花机的区别 精细弹花机的基本参数 拉丝弹花机和普通弹花机的区别 弹花机的种类 梳棉机和弹花机有什么差别? 弹花机震动大是什么原因 河北衡水收购弹花机