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

Android12 user版本无法进入recovery问题

1.前言

        之前Android9的时候公司自己写了一个简单的OTA在线升级,调用Recovery升级系统。后来Android12的时候想使用AB升级,发现我这套代码AB升级完成了之后,重启却无法切到B,所以造成升级一直是失败的。后来想着要不还是把AB关掉直接用Recovery升级。

        这时候才发现调用Recovery的时候user版本却报No Command。

        一直百思不得其解。后来查了一下发现很多人也有这个问题。但是有解决方案的都是需要会员才能看的,然后自己看了一下Recovery发现其实就只需要修改几句代码就可以让Recovery显示出来。

2.修改

其实本意就是把Recovery检测user版本的位置给他拿掉。

diff --git a/bootable/recovery/recovery.cpp b/bootable/recovery/recovery.cpp
old mode 100644
new mode 100755
index 07b14c8..ad31342
--- a/bootable/recovery/recovery.cpp
+++ b/bootable/recovery/recovery.cpp
@@ -842,11 +842,11 @@ Device::BuiltinAction start_recovery(Device* device, const std::vector<std::stri
     // If this is an eng or userdebug build, automatically turn on the text display if no command
     // is specified. Note that this should be called before setting the background to avoid
     // flickering the background image.
-    if (IsRoDebuggable()) {
+    //if (IsRoDebuggable()) {
       ui->ShowText(true);
-    }
+    //}
     status = INSTALL_NONE;  // No command specified
-    ui->SetBackground(RecoveryUI::NO_COMMAND);
+    //ui->SetBackground(RecoveryUI::NO_COMMAND);
   }

修改过后就可以正常看到recovery菜单了,并且升级正常。

相关文章:

Android12 user版本无法进入recovery问题

1.前言 之前Android9的时候公司自己写了一个简单的OTA在线升级&#xff0c;调用Recovery升级系统。后来Android12的时候想使用AB升级&#xff0c;发现我这套代码AB升级完成了之后&#xff0c;重启却无法切到B&#xff0c;所以造成升级一直是失败的。后来想着要不还是把AB关掉直…...

Android沙盒机制

Android沙盒机制 Android Q文件存储机制修改成了沙盒模式&#xff0c;应用只能访问自己沙盒下的文件和公共媒体文件 存储&#xff08;也就是write&#xff09;私有目录和公共媒体文件都不需要WRITE_EXTERNAL_STORAGE权限读取&#xff08;也就是read&#xff09;私有目录不需要…...

【C++】每日一题 290 单词规律

给定一种规律 pattern 和一个字符串 s &#xff0c;判断 s 是否遵循相同的规律。 这里的 遵循 指完全匹配&#xff0c;例如&#xff0c; pattern 里的每个字母和字符串 s 中的每个非空单词之间存在着双向连接的对应规律。 #include <string> #include <unordered_ma…...

CSS3 animation-direction 属性

CSS3 animation-direction 属性 定义和用法 animation-direction 属性定义是否循环交替反向播放动画。 **注意&#xff1a;**如果动画被设置为只播放一次&#xff0c;该属性将不起作用。 默认值&#xff1a;normal继承&#xff1a;否可动画化&#xff1a;否。请参阅 可动画…...

【mysql 5.7 没有ini 文件,手动添加配置文件】

在安装目录的根目录添加my.ini配置文件&#xff1a; 注意注释的内容&#xff0c; 其中server-id 在开启日志归档的时候&#xff0c;一定要配置&#xff0c; [mysql] # 设置mysql客户端默认字符集 default-character-setutf8[mysqld] #server id 一定要设置&#xff0c;否则无法…...

【Python】从零开始学习Python中的随机模块:实现验证码生成功能

欢迎来CILMY23的博客 本篇主题为 从零开始学习Python中的随机模块&#xff1a;实现验证码生成功能 个人主页&#xff1a;CILMY23-CSDN博客 个人专栏系列&#xff1a; Python | C语言 | 数据结构与算法 | C 感谢观看&#xff0c;支持的可以给个一键三连&#xff0c;点赞关注…...

游戏动画技术:从传统到深度学习

一、传统游戏动画技术简介 3D游戏动画的骨骼动画和蒙皮技术动画交互控制&#xff1a;状态机、动作融合和IK基于状态机的动画控制原理和问题 二、Motion Matching技术简介 传统状态机动画的缺陷Motion Matching的原理&#xff1a;根据角色状态自动匹配动画Dance Card动捕流程…...

Github 2024-04-12 开源项目日报 Top10

根据Github Trendings的统计,今日(2024-04-12统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Python项目6TypeScript项目2Cuda项目1C++项目1C项目1HTML项目1Jupyter Notebook项目1JavaScript项目1Python - 100天从新手到大师 创建周期:22…...

若依下整合多个Redis

提前总结&#xff0c;因此项目已多处使用Redis1 故此我创建的Redis工厂只添加了Redis2并不影响Redis1。但如若还有Redis3、4、5可按照下述方法继续往Redis工厂里添加 下述代码添加到 RedisConfig import org.springframework.beans.factory.annotation.Autowired; import org…...

SRTP + RTCP + SCTP

SRTP&#xff08;Secure Real-time Transport Protocol&#xff09; 主要功能&#xff1a;SRTP 是 RTP 的一个扩展&#xff0c;提供额外的安全特性&#xff0c;如加密、完整性校验和认证。它旨在保护实时传输的音频和视频流不被窃听或篡改。加密传输&#xff1a;SRTP 使用强加密…...

每日一题 — 串联所有单词的子串

30. 串联所有单词的子串 - 力扣&#xff08;LeetCode&#xff09; 思路&#xff1a;因为words里面的每一个字符串的长度都是固定的&#xff0c;所以可以将题转换成字符在字符串中的所有异位词 设出哈希表定义left和right进窗口维护count判断出窗口维护count 代码&#xff1a; …...

Android studio顶部‘app‘红叉- Moudle ‘XX.app’ dosen’t exist in project

Android studio顶部app红叉- Moudle ‘XX.app’ dosen’t exist in project 1、现象&#xff1a; 运行老项目或者有时候替换项目中的部分代码&#xff0c;明明没有错但是Android studio就编译报错了。 1.1 Android studio顶部app红叉。 1.2 点击Build没有clear菜单&#xff0…...

软考证书有用吗?软考证书的含金量大吗?

一、以考代评 通过考试并获得相应级别计算机专业技术资格&#xff08;水平&#xff09;证书的人员&#xff0c;表明其已具备从事相应专业岗位工作的水平和能力&#xff0c;用人单位可根据《工程技术人员职务试行条例》有关规定和工作需要&#xff0c;从获得计算机专业技术资格…...

自动化测试原理,怎么理解?【UI自动化】

首先&#xff0c;UI自动化是一种通过自动化工具或框架模拟用户与用户界面交互的测试技术。在软件开发过程中&#xff0c;这种技术对于确保用户界面的正确性和稳定性起着至关重要的作用。 具体来说&#xff0c;UI自动化的原理主要基于以下三个核心环节&#xff1a; 界面定位&am…...

typedef,#define,asserr,exit函数,free函数

一.typedef的应用 1.给已定的变量类型起个别名 加不加typedef&#xff0c;类型不变 &#xff08;加之前是个数组&#xff0c;加之后是数组类型&#xff1b; 加之前是个函数指针&#xff0c;加之后是函数指针类型&#xff1b;&#xff09; struct _person {char name[20];in…...

Linux的重要命令(二)+了解Linux目录结构

目录 一.Linux的目录结构 二.查看文件内容命令 1.cat 命令 2.more 命令 3.less 命令 4.head 命令 5.tail 命令 6.拓展 head 和 tail 的其他用法 ​编辑 三.统计文件内容的命令-wc ​编辑 四.检索和过滤文件内容的命令-grep ​编辑 ​编辑 五.压缩命令 gzip 和 bz…...

nmap使用

常用语句 主机发现和端口扫描 主机发现 sudo nmap -sn 192.168.80.0/24或sudo arp-scan -larp-scan是Kali Linux自带的一款ARP扫描工具。轻量级扫描工具&#xff0c;用来扫描局域网的主机还是挺好用的&#xff0c;由于扫描的少&#xff0c;所以扫描速度比较快&#xff0c;可…...

简约风好看的个人主页源码

效果图 PC端 移动端 源代码 index.html &#xfeff;<html lang"en"><head><meta charset"utf-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content&quo…...

1113. 红与黑--Flood Fill 算法

目录 1113. 红与黑--Flood Fill 算法---宽搜&#xff08;BFS&#xff09;或DFS&#xff09; 输入格式 输出格式 数据范围 输入样例&#xff1a; 输出样例&#xff1a; 思路&#xff1a; 1.BFS 思路&#xff1a; 2.DFS 思路 方法一&#xff1a;&#xff08;BFS&#x…...

深入Java中间件:编程设计精粹

个人主页&#xff1a; 进朱者赤 阿里非典型程序员一枚 &#xff0c;记录平平无奇程序员在大厂的打怪升级之路。 一起学习Java、大数据、数据结构算法&#xff08;公众号同名&#xff09; 引言 在Java中间件和框架里蕴藏着数不尽的编程设计精粹。这些设计不仅值得我们在日常编码…...

抖音下载器底层架构解析:策略模式与异步编排的高性能实现

抖音下载器底层架构解析&#xff1a;策略模式与异步编排的高性能实现 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback su…...

自用便捷图床 API 分享|支持 Token 鉴权、图片上传、删除,稳定可用

在日常写博客、做笔记、开发项目时&#xff0c;经常需要上传图片获取在线链接&#xff0c;支持获取上传凭证、图片上传、图片删除全套接口&#xff0c;开箱即用&#xff0c;下面完整分享接口文档与调用示例。 图床主页&#xff1a;https://imgbeduser.hlytools.top/ 一、整体…...

ComfyUI-Impact-Pack终极指南:快速掌握AI图像增强的完整教程

ComfyUI-Impact-Pack终极指南&#xff1a;快速掌握AI图像增强的完整教程 【免费下载链接】ComfyUI-Impact-Pack Custom nodes pack for ComfyUI This custom node helps to conveniently enhance images through Detector, Detailer, Upscaler, Pipe, and more. 项目地址: ht…...

基于OpenClaw的MacOS自动化AI助手:架构、配置与实战

1. 项目概述&#xff1a;一个为MacOS设计的自动化AI助手 最近在折腾桌面自动化&#xff0c;特别是想把一些高频、重复的跨应用操作给整合起来。比如&#xff0c;我经常需要在Telegram或WhatsApp上接收消息&#xff0c;然后根据内容去浏览器查资料、整理到笔记软件&#xff0c;或…...

限流不是加个计数器就行:用 Lua 脚本实现多维度原子限流

限流不是加个计数器就行&#xff1a;用 Lua 脚本实现多维度原子限流 项目地址&#xff1a;interview-agent 技术栈&#xff1a;Java 21 / Spring Boot 4.0 / Redis 7 (Redisson) / PostgreSQL 问题&#xff1a;单维度限流挡不住真实场景 简历上传接口&#xff0c;你加了一个&q…...

ROS2导航SLAM建图实战:从Gazebo仿真到真实地图构建

1. 环境准备与基础配置 第一次接触ROS2导航和SLAM建图的朋友可能会觉得配置环境很复杂&#xff0c;其实只要跟着步骤一步步来&#xff0c;半小时就能搞定。我用的是一台装了Ubuntu 20.04的笔记本&#xff0c;ROS2版本选择Foxy&#xff0c;这个组合最稳定。记得先更新系统&#…...

PiliPlus:用Flutter重新定义你的B站观影体验

PiliPlus&#xff1a;用Flutter重新定义你的B站观影体验 【免费下载链接】PiliPlus PiliPlus 项目地址: https://gitcode.com/gh_mirrors/pi/PiliPlus 在众多视频平台中&#xff0c;B站以其独特的社区文化和丰富内容生态深受用户喜爱。然而&#xff0c;官方客户端的一些…...

CES效用函数保姆级解析:从公式推导到Python代码实现(附替代弹性计算)

CES效用函数实战指南&#xff1a;从数学本质到Python可视化 在经济学建模和金融工程领域&#xff0c;CES&#xff08;Constant Elasticity of Substitution&#xff09;效用函数就像一把瑞士军刀——它不仅能描述消费者偏好&#xff0c;还能通过调整参数δ来模拟完全替代、Cobb…...

Flair NLP框架:从入门到精通的7步完整学习指南 [特殊字符]

Flair NLP框架&#xff1a;从入门到精通的7步完整学习指南 &#x1f680; 【免费下载链接】flair A very simple framework for state-of-the-art Natural Language Processing (NLP) 项目地址: https://gitcode.com/gh_mirrors/fl/flair Flair是一个简单而强大的自然语…...

NodeMCU PyFlasher:ESP8266图形化固件烧录终极解决方案

NodeMCU PyFlasher&#xff1a;ESP8266图形化固件烧录终极解决方案 【免费下载链接】nodemcu-pyflasher Self-contained NodeMCU flasher with GUI based on esptool.py and wxPython. 项目地址: https://gitcode.com/gh_mirrors/no/nodemcu-pyflasher 对于ESP8266开发者…...