【发布时间】:2018-05-26 05:35:23
【问题描述】:
当我们在 adb 中使用 getprop 时,我正在尝试更改输出。我知道 init 会从 /default.prop /system/build.prop /system/default.prop /data/local.prop 读取系统属性。就我而言,我只有 /default.prop 和 /system/build.prop。所以我所做的是获取 android 源代码并将其添加到 build/target/product/core.mk。
PRODUCT_PROPERTY_OVERRIDES :=\
ro.bootloader="PWN" \
ro.bootmode="PWN" \
ro.hardware="PWN" \
ro.kernel.qemu="PWN" \
ro.product.device="PWN" \
ro.product.model="PWN" \
ro.product.name="PWN"
之后,我编译源代码。但结果很奇怪。我可以看到 system/build.prop 已经改变了。
# begin build properties
# autogenerated by buildinfo.sh
ro.build.id=N2G47F
ro.build.display.id=aosp_arm-eng 7.1.2 N2G47F eng.sam.20180525.204329
test-keys
ro.build.version.incremental=eng.sam.20180525.204329
ro.build.version.sdk=25
ro.build.version.preview_sdk=0
ro.build.version.codename=REL
ro.build.version.all_codenames=REL
ro.build.version.release=7.1.2
ro.build.version.security_patch=2017-04-05
ro.build.version.base_os=
ro.build.date=Fri May 25 20:43:29 CST 2018
ro.build.date.utc=1527252209
ro.build.type=eng
ro.build.user=sam
ro.build.host=ubuntu
ro.build.tags=test-keys
ro.build.flavor=aosp_arm-eng
ro.product.model=AOSP on ARM Emulator
ro.product.brand=Android
ro.product.name=aosp_arm
ro.product.device=generic
ro.product.board=
# ro.product.cpu.abi and ro.product.cpu.abi2 are obsolete,
# use ro.product.cpu.abilist instead.
ro.product.cpu.abi=armeabi-v7a
ro.product.cpu.abi2=armeabi
ro.product.cpu.abilist=armeabi-v7a,armeabi
ro.product.cpu.abilist32=armeabi-v7a,armeabi
ro.product.cpu.abilist64=
ro.product.manufacturer=unknown
ro.product.locale=en-US
ro.wifi.channels=
ro.board.platform=
# ro.build.product is obsolete; use ro.product.device
ro.build.product=generic
# Do not try to parse description, fingerprint, or thumbprint
ro.build.description=aosp_arm-eng 7.1.2 N2G47F eng.sam.20180525.204329
test-keys
ro.build.characteristics=emulator
# end build properties
#
# from build/target/board/generic/system.prop
#
#
# system.prop for generic sdk
#
rild.libpath=/system/lib/libreference-ril.so
rild.libargs=-d /dev/ttyS0
#
# ADDITIONAL_BUILD_PROPERTIES
#
keyguard.no_require_sim=true
ro.com.android.dataroaming=true
ro.config.ringtone=Ring_Synth_04.ogg
ro.config.notification_sound=pixiedust.ogg
ro.carrier=unknown
ro.bootloader=PWN
ro.bootmode=PWN
ro.hardware=PWN
ro.kernel.qemu=PWN
ro.product.device=PWN
ro.product.model=PWN
ro.product.name=PWN
ro.config.alarm_alert=Alarm_Classic.ogg
ro.ril.hsxpa=1
ro.ril.gprsclass=10
ro.adb.qemud=1
persist.sys.dalvik.vm.lib.2=libart.so
dalvik.vm.isa.arm.variant=generic
dalvik.vm.isa.arm.features=default
ro.kernel.android.checkjni=1
dalvik.vm.lockprof.threshold=500
dalvik.vm.image-dex2oat-filter=verify-at-runtime
net.bt.name=Android
dalvik.vm.stack-trace-file=/data/anr/traces.txt
显然,我覆盖了属性。但是当我在 abd shell 中尝试 getprop 时,输出是这样的:
[ro.product.device]: [generic]
[ro.product.locale]: [en-US]
[ro.product.manufacturer]: [unknown]
[ro.product.model]: [AOSP on ARM Emulator]
[ro.product.name]: [aosp_arm]
[ro.bootloader]: [unknown]
[ro.bootmode]: [unknown]
我在这里只列出了一些,但我们可以看到这些属性都没有改变。这很奇怪。因为 init 应该在启动时从 build.prop 读取。有人告诉我重新编译整个系统而不是只编译sdk。我刚刚编译了整个系统,但它又失败了。这里同样的问题。我正在使用牛轧糖 7.1.2_r3。有什么帮助吗?
【问题讨论】:
标签: android android-source android-kernel