Android P 增加系统属性必读

Android13配置selinux让system应用可读sys,proc,SN号 Android13预置的system应用,需要读/sys, /proc目录,读(SN)serial number号, 需要修改selinux配置,否则会报avc错.其修改方法会比Android11复杂一些.。 阅读详情

如何增加属性

Android P 对属性配置有很严格的要求,不建议增加system 分区内的属性,建议增加的属性都在nonsystem分区。

  • Non-system 分区的限制

Android P 为稳定的exported-platform 属性在non-system 分区的使用定义了4 种类型的白名单:

1. vendor-init-settable

· 非system 分区的Property 文件和init rc 文件只能write 这些属性及vendor (或odm) 属性。

2. vendor-init-readable

· 非system 分区的init rc 文件只能read 这些属性及vendor (或 odm) 属性。

3. vendor-init-actionable

· 非system 分区的init rc 文件只能使用这些属性和vendor (或odm) 属性作为trigger。

4. Public-readable

· 非system 分区的的Bin 文件只能read 这些属性和vendor (或odm) 属性;

· 非system 分区的的Bin 文件只能write vendor (或odm) 属性,不能write platform 属性。

  • System 分区的限制

System 分区的进程理论上不允许读vendor(或odm)属性,但是Android P 上也不强制(也许未来会

强制)。

System 分区的进程不允许写vendor(或 odm)属性(否则会触犯neverallow rule)。

【豁免】将想这样做的系统进程对应domain 加入system_writes_vendor_properties_violators(only

allowed in Android P):

typeattribute zygote system_writes_vendor_properties_violators;

 

  • Non-system 分区属性名称限制

对于需要在non-system 分区init rc 文件中作为action 使用的属性,需要以如下字符串作为前缀:

"init.svc.vendor.", "ro.vendor.", "persist.vendor.", "vendor.",

"init.svc.odm.", "ro.odm.", "persist.odm.", "odm.", "ro.boot."

而只是在代码中使用属性无限制。

 

  • Non-system 分区增加属性

1. 在property_contexts 文件中添加:

vendor.dynamic.id u:object_r:dynamic_id_prop:s0

2. 在property.te 文件中添加:

type dynamic_id_prop, property_type;

3. dynamic_id.te配置:

set_prop(dynamic_id, dynamic_id_prop)

上句表明dynamic_id 进程可读写vendor.dynamic.id 属性。

get_prop(dynamic_id, dynamic_id_prop)

上句表明dynamic_id 进程只可读vendor.dynamic.id 属性。

把vendor.dynamic.id 属性值追加到
PRODUCT_PROPERTY_OVERRIDES 变量后,程序中即可使用此属性。
PRODUCT_PROPERTY_OVERRIDES += vendor.dynamic.id=1

Android 内核加载fw通用方法分析 Android ueventd分析 阅读详情

相关推荐

Android5.1源码改变USB连接方式

前言    接到一个项目,说要更改USB的连接方式,说是只要保留只充电模式,想了一下,这应该很容易实现呀,所以就在上层做了一系列的操作,结果很悲催,对于USB连接,好像系统底层有一定的读取,所以导致USB用不了,所以就各种爬文,终于找到最简单的方法! 目录文件:device\mediatek\common\device.mk 关键字:persist.sys.usb.config 把

lcpangs的博客 7455

Android rom开发:android9.0增加自定义系统属性注意事项

场景:在vendor/etc/init/hw/init.mt6765.rc中,通过设置自定义系统属性触发执行服务 实测代码: 如果这样写,属性可以设置成功,但是不会触发执行服务 on property:persist.gpio_out_high.enable=1 start gpioOutHigh 改为persist.vendor开头,可以触发执行服务 on property:persist.vendor.gpio_out_high.enable=1 start gpioOutHigh 注意,自定义属性不能

Android 2923

Android开发必读:Hidden API限制详解与合规解决方案

在Android开发中,系统API分为公开API和非公开API两大类。公开API是官方文档明确支持、行为稳定的接口,而非公开API(Hidden API)则是系统内部实现细节,其行为可能随版本更新而改变。Google通过建立白名单、灰名单和黑名单的分级管控机制,限制应用对非公开API的访问,旨在维护平台稳定性、安全性和生态健康。这一机制对开发者而言,意味着需要遵循更规范的开发实践,避免依赖可能随时变更的内部实现。在实际工程中,当应用出现“Accessing hidden method”警告时,通常源于对非公

weixin_29168393的博客 340

Android P给tombstone,crash,anr添加序列号和CPU信息

1、system\core\logcat\logcatd.rc add: on property:persist.vendor.logcpu.enable=true start logcpu on property:persist.vendor.logcpu.enable=false stop logcpu setprop persist.vendor.logcpu.enable "" on property:persist.vendor.logcpu.once.enable=t

Sunxiaolin2016的博客 1166

Android逆向工程学习指南:从入门到精通的完整路径与实战资源

逆向工程是深入理解软件运行机制、分析安全漏洞的核心技术,它通过将编译后的程序(如APK文件)从“黑盒”状态还原为可读的代码逻辑,揭示其内部工作原理。其技术原理基于静态分析(反编译、代码阅读)与动态分析(调试、运行时插桩)相结合,能够有效提升开发者的代码审计、安全防御和架构学习能力。在移动安全领域,掌握逆向工程对于分析恶意软件、评估应用风险、学习优秀实现模式具有重要价值。本文聚焦Android平台,系统梳理了从Java/Kotlin基础、Android系统架构,到Jadx、Frida等工具链使用的学习路径,并

weixin_34405557的博客 369

Flutter开发者必读:AI IDE中Token计费的本质与降本实战

Token是大语言模型处理文本的最小语义单元,不是字符计数,而是AI理解成本的量化单位。在Flutter开发中,Dart语法特性(如`=>`、`..`、泛型符号)、`pubspec.yaml`版本号、Gradle堆栈日志等高频结构,经分词器切分后会产生远超直觉的Token消耗。Gemini-3.1-Pro与Claude-3.5-Sonnet等模型因分词策略与输出密度差异,导致单位问题成本可相差4倍以上。其技术价值在于将开发者提问素养、代码精简能力、模型路由决策转化为可度量的工程效率指标;典型应用场景覆盖`p

weixin_33827590的博客 532

安卓系统镜像_一个支持 Airplay 镜像&视频投屏的应用

Airplay Receiver for windows下载zip解压即可体验, iPad/iPhone/Mac 使用airplay 镜像到windows, 可以把pc 作为苹果设备的扩展显示器直接下载 | Gitee下载 | 官网下载 使用必读Airplay 需要调用Apple Bonjour 广播服务, 先安装zip包内的 Bonjour64.msi 或 Bonjour.msi 如安装后运行...

weixin_39849254的博客 1045

蓝牙射频认证必读:定频测试3大核心要求与SRRC/BQB实战指南

本文详细解析蓝牙射频认证中的定频测试3大核心要求,包括频点选择与功率控制、调制模式与封包类型、测试环境搭建等关键技术要点。提供SRRC/BQB认证实战指南,涵盖TI CC系列、Realtek RTL系列和Nordic nRF52系列芯片平台的实施方案对比,帮助开发者高效通过蓝牙认证测试。

weixin_33816821的博客 352

如何在3分钟内实现安卓投屏零延迟:QtScrcpy跨屏控制终极指南

还在为手机屏幕太小而烦恼吗?想在大屏电脑上流畅操控安卓设备却苦于复杂的连接步骤?QtScrcpy作为一款开源安卓投屏工具,通过USB或网络连接实现高清显示与毫秒级延迟控制,无需root权限即可让你轻松享受跨设备协作的便捷体验。无论是手游操控、办公协作还是多设备管理,这款工具都能以其卓越性能满足你的多样化需求。 ## 🎯 为什么你需要QtScrcpy安卓投屏工具 ### 传统方案的三大挑战 大

gitblog_00778的博客 187

大模型从业者必读:半年27篇关键论文技术脉搏监测清单

大型语言模型(LLM)正从算法研究快速迈向工程落地阶段,其核心挑战已转向训练范式瓶颈、推理效率极限与安全对齐工业化。理解稀疏注意力、推测推理(Speculative Inference)、宪法式对齐(Constitutional AI)和跨模态门控等关键技术原理,不仅能揭示模型性能跃迁的底层动因,更直接关联到长上下文处理、低延迟服务、合规风控与多模态搜索等高价值应用场景。本文聚焦真实业务硬件下的可复现性、工程收益量化与生态位卡位分析,为算法工程师与技术决策者提供一份面向落地的技术演进地图。

dicui3114的博客 447

KALI虚拟机挂代理教程

需要你本地挂了代理,然后通过虚拟机连接本机代理端口,不说废话了,直接说怎么做了。 1.查看选项设置中自己的小飞机的本地端口是多少:(默认是1080) 2.本机win+r打开cmd,输入ipconfig查看本地ip,我的本地ip是192.168.0.107: 2.打开kali虚拟机,编辑ProxyChains配置文件: vi /etc/proxychains.conf 3.在文件末尾的ProxyList中添加物理机本地ip和1080端口作为代理地址: 4.保存并退出即可: esc :wq 回车 5.

qq_34853514的博客 3万+

科普向】Nexus 4 必读与常见问题解答【Android入门读

本帖最后由 諫山黄泉 于 2013-3-16 14:22 编辑 /** * [渣翻] xda: http://forum.xda-developers.com/showthread.php?t=2010338 * * 转载请注明出处: http://bbs.gfan.com/android-5576468-1-1.html * * 略长, 懒得翻请自行Crtl+F

no pay no gay 1420

Linux 使用rm -rf /*命令后,恢复系统方法

Linux 使用rm -rf /*命令后,恢复系统方法 个人学习记录 这里实验环境采用的是radhel7.1的版本: 个人认为核心就是缺失什么组件,就从别的地方复制什么组件过来,先把系统拉起来,再慢慢恢复配置 进入救援模式 1、将/dev/sda两个分区分别挂载看看,里面的内容,有内容的就是根存在的分区 2、ifconfig eno16777777 192.168.8.2 3、从另外一台一样系统的根 。用 tar打包,一个个文件夹拷贝过来 4、到坏系统,scp另外一个系统的etc.tar.gz 5

weixin_43603476的博客 1万+

2021年Android面试心得,面试真题解析

导语 事情是这样的,一个关注我公众号很久了的朋友,最近跟我说要去面试阿里P6,其实他的水平P7是够了的,他开发了6年,一直在学习新的技术,Flutter,NDK,这些都有涉及,年纪也不是很大26岁,之前我们聊过我觉得他有能力完全是可以胜任P7工作的。大家也不要把所谓的大厂看的过于难进,等下我会稍微说一下阿里面试需要的一下技能,和方法! 在体系化的学习过程中,博客、书籍、视频课程都是较好的学习手段。 鉴于Android也是基于java语言的,因此很多与java相关的基础也是必须掌握的,比如《深入理解Java虚

m0_56259515的博客 209

单片机控制双向可控硅的5种实用触发电路设计(附完整电路图)

本文深入解析了单片机控制双向可控硅的5种实用触发电路设计,涵盖从基础隔离到复杂负载驱动的实战方案。重点探讨了光电耦合器选型、过零检测同步、RC吸收电路精密计算以及应对感性负载和高噪声环境的加固策略,并提供了完整的电路图与调试避坑指南,旨在帮助开发者实现安全可靠的交流负载控制。

joy55的博客 2215

UFS电源管理深度解析:从电气特性到功耗模式优化

本文深度解析UFS电源管理,从VCC、VCCQ、VCCQ2三路供电体系切入,详细阐述了UIC链路休眠(HIBERN8)机制与设备七种功耗模式(Active、Idle、Sleep、Power Down)的切换逻辑。文章重点探讨了如何通过主动功耗管理策略与动态调整激活模式电流等级(bActiveICCLevel),在嵌入式与移动设备中实现性能与功耗的精细平衡与优化。

weixin_29243279的博客 490

Android网络开发实战:从HTTP到Socket的协议栈深度解析与应用优化

计算机网络是现代应用开发的基石,其核心在于TCP/IP协议栈的分层通信机制。从应用层的HTTP/HTTPS协议,到传输层的TCP/UDP可靠传输,再到网络层的IP路由寻址,每一层都承担着特定的职责,共同保障了数据的端到端可靠交付。理解这些底层原理,对于构建高性能、高可用的移动应用至关重要。在Android开发中,这直接关系到网络请求的稳定性、弱网环境下的用户体验以及复杂场景如长连接保活、自定义协议通信的实现。通过掌握OkHttp连接池复用、Socket编程中的粘包拆包处理、以及基于NetworkCallba

weixin_30357231的博客 330

使用安卓的IMU数据进行 行人航位推算(PDR)推算步长 附python 代码

加速度计数据、陀螺仪数据、重力传感器数据、姿态仰角数据。数据分析与定位轨迹生成主要使用Python离线完成。示意图。

三维点云技术探索 1916

VLC视频转码:免费搞定格式转换与压缩

手机弹出"文件过大,无法发送",你想存进U盘的录像有3个多GB,对方的老电视又播不了那个.mkv文件。 多数人第一反应是找个转换工具,结果往往要付费。其实 VLC 视频转码是播放器自带的能力,免费、开源,改格式、缩体积一次搞定,而且不是藏在什么高级设置里,菜单入口就摆在明面上,逻辑很简单。 ## 能力全景:能干什么,不能干什么 先说清楚边界。VLC转码的本职工作只做一件事:把旧格式读进来,把

gitblog_01004的博客 723

阅文集团大数据面试题及参考答案

在 Flink 中,watermark 是一种用于处理乱序事件时间的机制。实现接口:通常需要实现 AssignerWithPeriodicWatermarks 或 AssignerWithPunctuatedWatermarks 接口。前者会周期性地生成 watermark,后者则是基于某些特定事件来生成 watermark ,比如接收到某个特定值的消息时。定义位置:可以在数据源处或者在流处理的中间操作中定义 watermark。在数据源定义时,能更精准地根据数据的产生特性设置 watermark;

大模型大数据攻城狮的专栏 1089

996引擎 - 读写变量性能测试

单轮100万次读写,取3轮平均耗时(毫秒),有效读取率均为100%,数值越小性能越优。

灵台方寸山斜月三星洞 244

创业者必读的8篇高商业穿透力AI论文指南

AI论文不仅是学术成果,更是技术趋势与工程落地的关键信标。理解论文背后的原理,如注意力机制、模型缩放策略、链式推理提示等,能帮助非技术背景的创业者建立技术雷达,预判架构演进、识别部署瓶颈、优化算力投入。其核心价值在于将抽象算法转化为可量化的商业指标——响应延迟、API成本、硬件兼容性、客户投诉率下降等。尤其在AIGC、智能硬件、SaaS服务等主流创业场景中,精选2022–2024年已通过工业数据集验证、代码开源且含真实设备性能测试的论文,能显著提升技术决策前置能力与产品落地效率。

aiqixiao2017的博客 389

03 Token、Embedding、上下文窗口:开发者必须懂的三个基本概念

Token、Embedding 和上下文窗口是大模型应用开发的三个基础概念。本文从成本、速度、检索和上下文设计四个角度讲清它们的工程意义,帮助开发者理解为什么同一段内容会超限、变贵,为什么 RAG 能做语义检索。

老于的笔记的专栏 409

SSL证书选型必读:五个维度看清加密、兼容性与生命周期

SSL证书是HTTPS安全通信的信任基石,其核心原理基于公钥加密与数字签名,用于在TLS握手阶段完成身份认证与密钥交换。真正加密业务数据的是握手协商出的对称密钥,因此证书的密钥算法与证书链完整性直接决定握手性能与客户端信任路径能否建立。在实际工程中,证书的兼容性往往比加密强度更影响落地效果,例如PEM与PFX格式转换、证书链顺序、以及vsftpd等老服务对证书的硬性要求,都是部署时的常见痛点。此外,CA/B论坛将证书有效期压缩至398天后,证书过期与自动续期成为日常运维的核心议题,通过ACME协议与cert

weixin_28607671的博客 277

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

软件测试人员必备的60个测试工具,果断收藏了!

软件测试工具是催化剂,将决定市场带给测试的新时代挑战的速度。“ 善于利用工具,能提高工作效率。但,勿太依赖工具,任何的工具,只可辅助。网络安全系统学习资源推荐网络安全作为数字时代的核心技术基石,已成为国家与企业发展的战略优先级。构建完整的安全能力体系,需从基础理论到实战对抗层层深化。网络安全完整学习路线图(覆盖全领域知识点);20份渗透测试专业电子书;357页安全攻防实战笔记;50份安全攻防面试指南(含头部企业真题);安全红队渗透工具包;网络安全必读书籍清单;

A1_3_9_7的博客 944

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

物联网设备合规必读:HSM与TEE硬件安全技术解析与EdgeLock方案实践

在物联网设备安全领域,硬件安全模块(HSM)和可信执行环境(TEE)是构建设备信任根的两大核心技术。HSM通过物理隔离提供独立的密钥存储与加密运算环境,能有效抵御物理攻击和侧信道攻击,是满足高级别安全认证(如FIPS 140-3)的关键。TEE则通过硬件辅助的访问控制机制,在主处理器内创建隔离的安全执行区域,在性能与集成度上具有优势。随着欧盟《网络弹性法案》(CRA)和美国“网络信任标志”等法规的推行,设备制造商必须证明其产品具备安全默认配置、访问控制和数据保护等核心能力。以NXP EdgeLock Sec

chouchijiao8952的博客 433

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

上一篇: git commit 模板,让代码提交更规范
下一篇: 如何打开LK打印信息
fight for survive
博客等级 码龄15年 25粉丝 33原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值