adb shell getprop 和 setprop 如何工作?
How does adb shell getprop and setprop work?
我想了解 adb shell setprop mypropertykey mypropertyvalue
的工作原理。换句话说,我编辑了 /system/build.prop
文件,但是当我尝试使用 getprop
命令读回值时,我似乎得到了一个空白值。
然而,当我在 root 模式下通过 adb shell setprop
设置 属性 然后取消模拟器并使用代码读取值时,我能够获得正确的值。
我不明白的是,如果该值是通过 adb shell setprop
设置的,那么为什么它没有写入 build.prop
文件?那么getprop
从哪里读取值呢?
Android 系统属性由特殊 property_service
管理。 /system/build.prop
只是 4-6 个(取决于版本)只读文件中的一个,其中包含 property_service
在启动期间用于填充其内部内存数据库的默认值。因此,在 运行 时间内对文件所做的更改直到重新启动后才会传播。
setprop
和 getprop
命令用于访问该数据库中的数据。除非 属性 名称以 persist.
开头 - 然后该值将存储在 /data/property
文件夹中。
我想了解 adb shell setprop mypropertykey mypropertyvalue
的工作原理。换句话说,我编辑了 /system/build.prop
文件,但是当我尝试使用 getprop
命令读回值时,我似乎得到了一个空白值。
然而,当我在 root 模式下通过 adb shell setprop
设置 属性 然后取消模拟器并使用代码读取值时,我能够获得正确的值。
我不明白的是,如果该值是通过 adb shell setprop
设置的,那么为什么它没有写入 build.prop
文件?那么getprop
从哪里读取值呢?
Android 系统属性由特殊 property_service
管理。 /system/build.prop
只是 4-6 个(取决于版本)只读文件中的一个,其中包含 property_service
在启动期间用于填充其内部内存数据库的默认值。因此,在 运行 时间内对文件所做的更改直到重新启动后才会传播。
setprop
和 getprop
命令用于访问该数据库中的数据。除非 属性 名称以 persist.
开头 - 然后该值将存储在 /data/property
文件夹中。