当前位置: 首页 > news >正文

Android 自定义系统版本号

framework开发,实现自定义系统版本号。
 修改位置:
 \build\tools
 buildinfo.sh

#!/bin/bashecho "# begin build properties"
echo "# autogenerated by buildinfo.sh"echo "ro.build.id=$BUILD_ID"
echo "ro.build.display.id=$BUILD_DISPLAY_ID"
echo "ro.build.version.incremental=$BUILD_NUMBER"
echo "ro.build.version.sdk=$PLATFORM_SDK_VERSION"
echo "ro.build.version.preview_sdk=$PLATFORM_PREVIEW_SDK_VERSION"
echo "ro.build.version.codename=$PLATFORM_VERSION_CODENAME"
echo "ro.build.version.all_codenames=$PLATFORM_VERSION_ALL_CODENAMES"
echo "ro.build.version.release=$PLATFORM_VERSION"
echo "ro.build.version.security_patch=$PLATFORM_SECURITY_PATCH"
echo "ro.build.version.base_os=$PLATFORM_BASE_OS"
echo "ro.build.version.min_supported_target_sdk=$PLATFORM_MIN_SUPPORTED_TARGET_SDK_VERSION"
echo "ro.build.date=`$DATE`"
echo "ro.build.date.utc=`$DATE +%s`"
echo "ro.build.type=$TARGET_BUILD_TYPE"
echo "ro.build.user=$USER"
echo "ro.build.host=`hostname`"
echo "ro.build.tags=$BUILD_VERSION_TAGS"
echo "ro.build.flavor=$TARGET_BUILD_FLAVOR"
if [ -n "$BOARD_BUILD_SYSTEM_ROOT_IMAGE" ] ; thenecho "ro.build.system_root_image=$BOARD_BUILD_SYSTEM_ROOT_IMAGE"
fi
if [ -n "$AB_OTA_UPDATER" ] ; thenecho "ro.build.ab_update=$AB_OTA_UPDATER"

版本号:

echo "ro.build.display.id=$BUILD_DISPLAY_ID"

改为:

SOFTWARE_VERSION="system_"
date=$(date "+%Y%m%d")echo "ro.build.display.id=$SOFTWARE_VERSION$date"

重新编译,可以直接make,无需清理out文件夹重新花费大量时间全部编译
通过查看编译完成后的文件 out/target/product/generic_x86_64/system/build.prop 确认是否修改完成

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 数学建模(5)——逻辑回归
  • 『大模型笔记』LLM秘密:温度、Top-K和Top-P抽样技术解析!
  • 服务器相关总结
  • 2024 中国大数据交易平台发展现状调研简报
  • Leetcode3208. 交替组 II
  • 逆向案例二十八——某高考志愿网异步请求头参数加密,以及webpack
  • Qwen-Agent
  • 【MQTT(2)】开发一个客户端,ubuntu版本
  • 亚信安全终端一体化解决方案入选应用创新典型案例
  • mq基础入门
  • CDGA数据治理工程师证书怎么样?如何报名?考试难不难?通过率高吗?
  • layui table 浮动操作内容收缩,展开
  • HTML5+ push消息推送
  • 【面经】C++八股文(地平线C++一面)
  • WebGL-编译报错,如何定位sendfile报错位置
  • $translatePartialLoader加载失败及解决方式
  • 【跃迁之路】【444天】程序员高效学习方法论探索系列(实验阶段201-2018.04.25)...
  • CentOS从零开始部署Nodejs项目
  • HTTP那些事
  • java中具有继承关系的类及其对象初始化顺序
  • PHP的类修饰符与访问修饰符
  • Python十分钟制作属于你自己的个性logo
  • quasar-framework cnodejs社区
  • Redux 中间件分析
  • scrapy学习之路4(itemloder的使用)
  • 如何借助 NoSQL 提高 JPA 应用性能
  • 如何用vue打造一个移动端音乐播放器
  • 通过几道题目学习二叉搜索树
  • 小程序上传图片到七牛云(支持多张上传,预览,删除)
  • 一道闭包题引发的思考
  • 做一名精致的JavaScripter 01:JavaScript简介
  • ​【数据结构与算法】冒泡排序:简单易懂的排序算法解析
  • ‌移动管家手机智能控制汽车系统
  • #100天计划# 2013年9月29日
  • #mysql 8.0 踩坑日记
  • #传输# #传输数据判断#
  • (2.2w字)前端单元测试之Jest详解篇
  • (pycharm)安装python库函数Matplotlib步骤
  • (三分钟了解debug)SLAM研究方向-Debug总结
  • (十六)串口UART
  • (图)IntelliTrace Tools 跟踪云端程序
  • (一) springboot详细介绍
  • (一)u-boot-nand.bin的下载
  • (已解决)报错:Could not load the Qt platform plugin “xcb“
  • (原創) 系統分析和系統設計有什麼差別? (OO)
  • (转)创业家杂志:UCWEB天使第一步
  • *Django中的Ajax 纯js的书写样式1
  • .[backups@airmail.cc].faust勒索病毒的最新威胁:如何恢复您的数据?
  • .NET Entity FrameWork 总结 ,在项目中用处个人感觉不大。适合初级用用,不涉及到与数据库通信。
  • .NET Framework 3.5安装教程
  • .netcore 如何获取系统中所有session_如何把百度推广中获取的线索(基木鱼,电话,百度商桥等)同步到企业微信或者企业CRM等企业营销系统中...
  • .Net接口调试与案例
  • /usr/bin/python: can't decompress data; zlib not available 的异常处理
  • @ConfigurationProperties注解对数据的自动封装
  • [ C++ ] template 模板进阶 (特化,分离编译)