日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

怎么在Android系统中增加系统属性?

發布時間:2024/1/1 Android 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 怎么在Android系统中增加系统属性? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

? ? ? ??系統屬性:就是在整個Android系統中都是可以調用的屬性,比如我們某個功能,在fw層和c層都有改動,我們需要用一個變量去控制這個功能是否啟用和關閉,這就需要用到全局的系統屬性;

????????/system/build.prop 是一個屬性文件,在Android系統中.prop文件很重要,記錄了系統的設置和改變。這個文件是如何生成的呢?

build/tools/buildinfo.sh 腳本就是專門用于生成build.prop文件
build/core/Makefile中使用build/tools/buildinfo.sh 腳本生成build.prop文件,所以我們要添加系統屬性,主要就是在buildinfo.sh、Makefile和version_defaults.mk中

? ? ? ? 記錄一下我新增系統屬性的流程:

? ? ? ? 1、需求:公司領導讓我新增一個功能,這個功能在fw層和c層都有改動,然后需要控制這個功能的啟動和關閉(每次編譯都去刪除代碼這肯定不太現實),所以需要加一個系統屬性,每次編譯修改這個系統屬性就行

? ? ? ? 2、首先我們需要在/build/core/version_defaults.mk中增加字段,

????????TARGET_CONFIGURE := false

? ? ? ? 然后需要在build/tools/buildinfo.sh中增加

???echo "ro.product.configure=$TARGET_CONFIGURE"

? ? ? ? 最后需要在build/core/Makefile中添加

????TARGET_CONFIGURE="$(TARGET_CONFIGURE)"

? ? ? ? 最后編譯,編譯完成后就會在 /out/target/product/<product>/system/build.prop中出現加入的ro.product.configure屬性,

????????如果需要修改屬性的值,只需要更改/build/core/version_defaults.mk即可

? ? ? ? 使用:我們定義了系統屬性,肯定是需要調用在fw層調用的方法是:

????????getString("ro.product.configure")

????????在C層調用的方法是:

????????property_get("ro.product.configure", value, "") 注:value是接收的字段

? ? ? ?在adb獲取系統屬性的方法是:

????????????????adb shell getprop? ?//獲取系統全部屬性

????????????????adb shell getprop "ro.product.configure" //獲取某個屬性

????????????????adb shell setprop "ro.product.configure"?"12"? ?//設置某個屬性的值? ro開頭的為只讀屬性,不可設置

由于我剛接觸系統層源碼,可能還處于比較菜的地步,如果有錯誤的地方,麻煩大佬指點下,感謝感謝........

????????

總結

以上是生活随笔為你收集整理的怎么在Android系统中增加系统属性?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。