安卓11通过脚本修改相应板型系统属性

安卓10以后rk的一套源码兼容很多板型,多种cpu型号都兼容了,这一点相比之前省心了很多,所以就诞生了需要一套代码兼容多种板子的需求,定制修改中需要经常修改系统属性,通过以下脚本一次实现:

bash 复制代码
#!/bin/bash
	
function gettop
{
    local TOPFILE=build/make/core/envsetup.mk
    if [ -n "$TOP" -a -f "$TOP/$TOPFILE" ] ; then
        # The following circumlocution ensures we remove symlinks from TOP.
        (cd $TOP; PWD= /bin/pwd)
    else
        if [ -f $TOPFILE ] ; then
            # The following circumlocution (repeated below as well) ensures
            # that we record the true directory name and not one that is
            # faked up with symlink names.
            PWD= /bin/pwd
        else
            local HERE=$PWD
            local T=
            while [ \( ! \( -f $TOPFILE \) \) -a \( $PWD != "/" \) ]; do
                \cd ..
                T=`PWD= /bin/pwd -P`
            done
            \cd $HERE
            if [ -f "$T/$TOPFILE" ]; then
                echo $T
            fi
        fi
    fi
}

function get_build_var()
{
    if [ "$BUILD_VAR_CACHE_READY" = "true" ]
    then
        eval "echo \"\${var_cache_$1}\""
    return
    fi

    local T=$(gettop)
    if [ ! "$T" ]; then
        echo "Couldn't locate the top of the tree.  Try setting TOP." >&2
        return
    fi
    (\cd $T; build/soong/soong_ui.bash --dumpvar-mode $1)
}

    product=$(get_build_var PRODUCT_MODEL)
    echo  "product=" $product 
        find device/ -name $product.mk  |xargs sed -i '$a PRODUCT_PROPERTY_OVERRIDES += persist.sys.navibar = 0'
        find device/ -name $product.mk  |xargs sed -i '$a PRODUCT_PROPERTY_OVERRIDES += persist.sys.statusbar = 0'
        find device/ -name $product.mk  |xargs sed -i '$a PRODUCT_PROPERTY_OVERRIDES += persist.sys.statebarslide = 0'
     find device/ -name $product.mk  |xargs sed -i '$a PRODUCT_PROPERTY_OVERRIDES += persist.sys.usb.config=mtp'
相关推荐
传人几秒前
悬停旋转放大和位移效果如何写
前端·javascript·css
yunwei373 分钟前
eBPF 开发实践:使用 eBPF 隐藏进程或文件信息
linux·后端·性能优化
芝麻开门29210 分钟前
Linux文件系统
linux·文件系统
羔羊++13 分钟前
24_实验二十三_运行内核
linux
羔羊++15 分钟前
23_实验二十二_移植网卡驱动
linux
水饺编程19 分钟前
第1章:开发环境搭建,在 Windows 中安装 Git
linux·c语言·汇编·git·ubuntu
0+11124 分钟前
Linux --进程间关系和守护进程
linux·运维·服务器
AIgorithmGEEK26 分钟前
[Linux]HTTP 应用层协议全解(下篇)
linux·网络·网络协议·http·cookie·无连接·无状态
zhangzeyuaaa31 分钟前
Ruby 方法参数完全指南:默认值、可变参数与关键字参数
前端·python·ruby
名誉寒冰32 分钟前
我是怎么理解 eBPF、AppArmor 和 Seccomp 的?
linux·网络·内核