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

Framework模块编译脚本利器

目录

一.编译介绍

编译方式一

编译方式二

二.编译脚本

三.push编译文件


一.编译介绍

android源码目录下的build/envsetup.sh文件,描述编译的命令

– m: Makes from the top of the tree.(编译所有的模块)

– mm: Builds all of the modules in the current directory.(编译当前目录下的模块,当前目录下要有Android.mk文件 )

– mmm: Builds all of the modules in the supplied directories.(编译指定路径下的模块,指定路径下要有Android.mk文件)

所以要想使用这些命令,首先需要在android源码根目录执行build/envsetup.sh 脚本设置环境。 

下面举个例子说明,假设我要编译android下的\hardware\libhardware_legacy\power模块,当前目录为源码根目录,方法如下:

编译方式一

1、 build/envsetup.sh

2、lunch rk3576_userdebug

3、mmm hardware/libhardware_legacy/power/

编译方式二

 1、 build/envsetup.sh

 2、lunch rk3576_userdebug

 3、cd hardware/libhardware_legacy/power/

 4、mm

二.编译脚本

复制以下东西到txt后后缀改成.sh(注意source后面envsetup.sh路径对应

#!/bin/bash
source ./build/envsetup.sh
lunch rk3576_userdebug
echo "start build android"
mmm packages/apps/Settings
echo "build success"

三.push编译文件

复制以下东西到txt后后缀改成.bat(注意根据实际情况替换

adb root 
adb remount
adb push \\172.17.98.200\xt\3576_dev\RK3576\out\target\product\rk3576_ebook\system_ext\priv-app\Settings\Settings.apk  /system_ext/priv-app/Settings
adb push \\172.17.98.200\xt\3576_dev\RK3576\out\target\product\rk3576_ebook\system_ext\priv-app\Settings\oat\arm64\Settings.odex  /system_ext/priv-app/Settings/oat/arm64
adb push \\172.17.98.200\xt\3576_dev\RK3576\out\target\product\rk3576_ebook\system_ext\priv-app\Settings\oat\arm64\Settings.vdex  /system_ext/priv-app/Settings/oat/arm64
adb reboot
pause


 

http://www.xdnf.cn/news/1993.html

相关文章:

  • KafkaSpark-Streaming
  • C语言数据类型全面解析:从入门到精通
  • Django【应用 01】django-plotly-dash安装及使用
  • Java 设计模式心法之第22篇 - 备忘录 (Memento) - 捕获与恢复对象状态的“时光机”
  • 力扣-160.相交链表
  • 制作一款打飞机游戏23:编辑器ui
  • kafka与flume的整合、spark-streaming
  • Virtio 技术解析 | 框架、设备实现与实践指南
  • 【分布式系统中的“瑞士军刀”_ Zookeeper】一、Zookeeper 快速入门和核心概念
  • EasyRTC音视频实时通话嵌入式SDK,打造社交娱乐低延迟实时互动的新体验
  • Golang日志模块之xlog
  • 58、微服务保姆教程(一)
  • classfinal 修改过源码,支持jdk17 + spring boot 3.2.8
  • BGE-m3 和 BCE-Embedding 模型对比分析
  • 深度强化学习(DRL)实战:从AlphaGo到自动驾驶
  • 三串口进行试验
  • Golang | 倒排索引
  • 前端技术Ajax实战
  • 机器学习基础理论 - 判别模型 vs 生成模型
  • Kafka和其他组件的整合
  • 从零开始学习人工智能Day5-Python3 模块
  • 25%甘油(灭菌)保存菌液以及10%甘油(普通)保存蛋白的原理及操作-实验操作系列-010
  • 驱动开发硬核特训 · Day 21(下篇): 深入剖析 PCA9450 驱动如何接入 regulator 子系统
  • WordPress AI插件能自动写高质量文章吗,如何用AI提升网站流量
  • django.db.utils.OperationalError: (1050, “Table ‘你的表名‘ already exists“)
  • 第十四届蓝桥杯刷题——day20
  • 【大语言模型】大语言模型(LLMs)在工业缺陷检测领域的应用
  • NAT穿透
  • 59、微服务保姆教程(二)Nacos--- 微服务 注册中心 + 配置中心
  • Java知识日常巩固(三)