Android学习 —— 测试init.rc中的条件触发的处理顺序

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: Android学习 —— 测试init.rc中的条件触发的处理顺序

测试程序

在/system/etc/init/hw/init.rc中追加下面的测试程序:

然后重启

日志

使用logcat抓取init的日志:

adb wait-for-device logcat -s init

测试

  • 依次设置test1和test2
vsoc_x86_64:/ # setprop pengdl.test1 1
vsoc_x86_64:/ # setprop pengdl.test2 1

然后会看到下面的日志:

test.txt的文件内容:

vsoc_x86_64:/ # cat /data/test.txt
1
  • 再次设置test1或者test2
vsoc_x86_64:/ # setprop pengdl.test1 1

看到如下日志:

文件内容还是1.

  • 设置test3
vsoc_x86_64:/ # setprop pengdl.test3 1

看到如下日志:

文件内容变成3

  • 再次设置test3
vsoc_x86_64:/ # setprop pengdl.test3 1

看到如下日志:

文件内容还是3

  • 再次设置test1或者test2
vsoc_x86_64:/ # setprop pengdl.test2 1

看到如下日志:

文件内容还是3

总结

从上面的测试可以得到如下结论:

  1. 当设置某个属性时,会检查所有用到该属性的section的触发条件
  2. 如果多个section的触发条件都满足,按照在文件中出现(或者说是解析时)的先后顺序依次处理
  3. 每当属性值被设置时,不管值有没有变化,都会检查触发条件
相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
1月前
|
SQL 安全 测试技术
软件测试的艺术:从错误中学习,提升产品质量
本文将探讨软件测试的重要性和如何通过测试来提高产品质量。我们将从软件测试的基本概念入手,逐步深入到不同的测试方法、工具和技术。同时,我们还将讨论如何建立有效的测试策略以及如何处理测试过程中发现的问题。
|
5天前
|
测试技术 开发者
vertx的学习总结6之动态代理类和测试
本文是Vert.x学习系列的第六部分,介绍了如何使用动态代理在事件总线上公开服务,以及如何进行Vert.x组件的异步测试,包括动态代理的创建和使用,以及JUnit 5和Vert.x测试工具的结合使用。
12 3
vertx的学习总结6之动态代理类和测试
|
5天前
|
测试技术
软件质量保护与测试(第2版)学习总结第十三章 集成测试
本文是《软件质量保护与测试》(第2版)第十三章的学习总结,介绍了集成测试的概念、主要任务、测试层次与原则,以及集成测试的不同策略,包括非渐增式集成和渐增式集成(自顶向下和自底向上),并通过图示详细解释了集成测试的过程。
20 1
软件质量保护与测试(第2版)学习总结第十三章 集成测试
|
5天前
|
测试技术
软件质量保护与测试(第2版)学习总结第十章 黑盒测试
本文是《软件质量保护与测试》(第2版)第十章的学习总结,介绍了黑盒测试的基本概念和方法,包括等价类划分、边界值分析和因果图法,并通过具体例子展示了如何设计测试用例来验证软件的功能性需求。
24 1
软件质量保护与测试(第2版)学习总结第十章 黑盒测试
|
5天前
|
人工智能 人机交互 数据库
软件质量保护与测试(第2版)学习总结第一章
本文是《软件质量保护与测试》(第2版)第一章的学习总结,概述了软件的特征、分类、软件工程的层次化技术、现代软件开发的变化,以及软件质量的概念和评价体系,包括黑盒、白盒和灰盒测试方法。
16 1
软件质量保护与测试(第2版)学习总结第一章
|
16天前
|
Java Maven 开发工具
第一个安卓项目 | 中国象棋demo学习
本文是作者关于其第一个安卓项目——中国象棋demo的学习记录,展示了demo的运行结果、爬坑记录以及参考资料,包括解决Android Studio和maven相关问题的方法。
第一个安卓项目 | 中国象棋demo学习
|
2天前
|
SQL 分布式计算 Hadoop
Hadoop-14-Hive HQL学习与测试 表连接查询 HDFS数据导入导出等操作 逻辑运算 函数查询 全表查询 WHERE GROUP BY ORDER BY(一)
Hadoop-14-Hive HQL学习与测试 表连接查询 HDFS数据导入导出等操作 逻辑运算 函数查询 全表查询 WHERE GROUP BY ORDER BY(一)
12 4
|
1天前
|
存储 Prometheus NoSQL
大数据-44 Redis 慢查询日志 监视器 慢查询测试学习
大数据-44 Redis 慢查询日志 监视器 慢查询测试学习
13 3
|
2天前
|
SQL
Hadoop-14-Hive HQL学习与测试 表连接查询 HDFS数据导入导出等操作 逻辑运算 函数查询 全表查询 WHERE GROUP BY ORDER BY(二)
Hadoop-14-Hive HQL学习与测试 表连接查询 HDFS数据导入导出等操作 逻辑运算 函数查询 全表查询 WHERE GROUP BY ORDER BY(二)
11 2
|
5天前
|
测试技术
软件质量保护与测试(第2版)学习总结第十一章 白盒测试
本文是《软件质量保护与测试》(第2版)第十一章的学习总结,详细讲解了白盒测试中的控制流测试技术,包括语句覆盖、判断覆盖、条件覆盖、判定-条件覆盖和路径覆盖等方法,并通过具体代码示例展示了如何设计测试用例来验证程序中的不同执行路径。
12 2