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

Android OTA升级常见问题的解决方法

1.1 多服务器编译 OTA 报错

Android7 以后引入了 jack-server 功能,也导致在公共服务器上 编译 Android7 以上的版本时,会出现 j ack-server 报错问题。

在这里插入图片描述
在多用户服务器上 编译 dist 时 会出现编译过程中 会将 port_service 和 port_admin 改为 默认的 8076 和 8077。
目前 没有发现什么好的解决方式:
1.尽量 避免在多用户服务器上 编译 dist 。
2.若是必须在多用户服务器上编译 dist 则需要将 jack-setting 和 jack-server 里的 config 文件中
将 port_service 改为相同的 8076 //改为默认值
将 port_admin 改为相同的 8077 //改为默认值
根目录下 vi .jack-setting 即可进行配置

1.2 OTA 升级时间戳校验报错

我们在 recovery 升级的时候,经常提示这样的错误:
Installingupdate…
Can’tinstall this package(TueJun2712:29:30CST2017)overnewerbuild(MonJun2617:20:32CST2017)
E:Errorin/udisk/xxxx.zip
(Status7)

意思就是,我们不能从新的版本升级到旧的系统,有个时间戳的比较。
针对此问题有如下解决方式:
1.每次编译 OTA包的时候 都应该先 make clean,之后重新编译,保证 update 包的 UTC 时间比需要升
级的基础版本的 UTC 时间要新。
2.去除时间戳校验(默认是不建议客户这么做):
./build/tools/releasetools/ota_from_target_files 传入参数–no_prereq 即可,那么编译生成的升级包不再包 含时间戳校验。 原因:如果时间戳校验失败,既 OTA包没有设备中的 recovery 的编译时间早

1.3 JDK 版本不匹配

Unsupported major.minor version 52.0: 看到 Unsupported 想到 jdk 高版本能兼容低版本,但是 低版本不能兼容高版本

在这里插入图片描述
修改方法: sudo update-alternatives --config java

在这里插入图片描述

1.4 手动 push update 包时候不要有 adb remount

在 ota 升级的时候不要有 adb remount 这样的动作
adb remount 会导致 system 发生改变,会导致升级的时候哈希值发生改变,升级失败

http://www.lryc.cn/news/12787.html

相关文章:

  • 说说Hibernate
  • 目标检测论文阅读:DETR算法笔记
  • Golang sync.Once 源码浅析
  • C++面向对象(上)
  • 经常用但是不知道什么是BFC?
  • GO的临时对象池sync.Pool
  • 高精度算法一
  • 2023年全国最新食品安全管理员精选真题及答案1
  • C++入门:引用
  • SpringSecurity的权限校验详解说明(附完整代码)
  • Java-集合(5)
  • 研制过程评审活动(四)设计定型阶段
  • 【Linux】进程替换
  • LeetCode171-Excel表列序号(进制转换问题)
  • React SSR
  • 如何系统地优化页面性能
  • Vulnhub 渗透练习(八)—— THE ETHER: EVILSCIENCE
  • 华为OD机试题 - 水仙花数 2(JavaScript)| 代码+思路+重要知识点
  • 字符设备驱动基础(二)
  • 看见统计——第三章 概率分布
  • 【基于众包标注的语文教材句子难易度评估研究 论文精读】
  • 实例五:MATLAB APP design-APP登录界面的设计
  • 作用域和闭包:
  • Vue常见面试题?
  • 前端借助Canvas实现压缩图片两种方法
  • 2023年美赛C题Wordle预测问题二建模及Python代码详细讲解
  • 【算法】双指针
  • Flutter-Widget-学习笔记
  • easyExcel 写复杂表头
  • 关于线程池的执行流程和拒绝策略