
Android
木木总裁
车载BSP
手机BSP
展开
-
Android系统修改硬件设备访问权限
在硬件抽象层模块文件(so)文件中,提供的函数调用open函数来打开设备文件,比如/dev/gpio,如果不修改设备文件/dev/gpio的访问权限,那么应用程序通过JNI接口来调用硬件抽象层提供的函数接口来调用open函数打开设备文件就会失败,这表示当前用户没有权限打开设备文件/dev/gpio文件。在默认情况下,只有root用户才有权限访问系统的设备文件,由于一般的应用程序没有root权限的。...原创 2019-06-13 14:35:12 · 1736 阅读 · 0 评论 -
init.rc语法详解
init.rc脚本的4种类型Action(动作) Commands(命令) Services(服务) Options(选项)Action格式:on < trigger > ##触发条件< command1 > ## 执行命令< command2 > ##可以执行多个命令< command3 >…比如...转载 2019-06-14 10:26:34 · 1394 阅读 · 0 评论 -
[转] 用logwrapper可以看到init.rc里面程序的log
有的程序用printf打log,在init.rc里面,这些log是无法显示的,因为log被输出到了/dev/null。解决这个问题可以用logwrapper,方法如下:service adbd /system/bin/logwrapper/sbin/adbd disabled就是把logwrapper加在服务器程序前面。另外,logwrapper的buffer是一个环形...转载 2019-06-14 10:22:07 · 1157 阅读 · 0 评论 -
Android init.rc文件解析过程详解
Android init.rc文件解析过程详解一、init.rc文件结构介绍init.rc文件基本组成单位是section, section分为三种类型,分别由三个关键字(所谓关键字即每一行的第一列)来区分,这三个关键字是on、service、import。on类型的section表示一系列命令的组合,例如:on initexport PATH /s...转载 2019-06-14 11:35:26 · 1085 阅读 · 1 评论 -
init.rc介绍
init.rc介绍我先来做个名词解释,什么是init.rc,那就要从什么是init说起。init是由Android的Linux内核启动的第一个第一个进程,这个进程非常特殊,它的PID永远是1,并且这个进程是不会死亡的,如果它死亡,内核就会崩溃。init进程启动后会fork出很多及其重要的系统进程,比如我们做应用开发的时候都耳熟能详的zygote进程,我们所有的应用程序的进程都由zygote拉起...原创 2019-06-14 12:28:48 · 6715 阅读 · 1 评论 -
LOCAL_MODULE_TAGS 选项说明
LOCAL_MODULE_TAGS :=user eng tests optionaluser: 指该模块只在user版本下才编译eng: 指该模块只在eng版本下才编译tests: 指该模块只在tests版本下才编译optional:指该模块在所有版本下都编译eng This is the default flavor. A plain "make" is the sa...转载 2019-06-05 09:28:52 · 4654 阅读 · 1 评论 -
LOCAL_SHARED_LIBRARIES 与 LOCAL_LDLIBS,LOCAL_LDFLAGS的区别
LOCAL_SHARED_LIBRARIES 与 LOCAL_LDLIBS,LOCAL_LDFLAGS的区别LOCAL_LDLIBS :链接的库不产生依赖关系,一般用于不需要重新编译的库,如库不存在,则会报错找不到。且貌似只能链接那些存在于系统目录下本模块需要连接的库。如果某一个库既有动态库又有静态库,那么在默认情况下是链接的动态库而非静态库。如:LOCAL_LDLIBS += -lm –l...转载 2019-07-08 11:06:25 · 7352 阅读 · 0 评论