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

fota升级,可卸载apk也进行更新

首先如题目要求

可卸载apk是通过刷机或恢复出厂设置之后执行脚本安装的

然后fota升级后,在判断是否“是第一次刷机和恢复出厂设置”时候会返回false,就导致脚本没有执行。导致apk升级不成功

所以我们要完成这个就是,确定fota什么时候升级完,然后再执行脚本就完事

fota升级一般在重启之后会有个广播,我们只要监听这个广播

下面是patch

--- a/frameworks/base/services/core/java/com/android/server/am/ActivityManagerService.java
+++ b/frameworks/base/services/core/java/com/android/server/am/ActivityManagerService.java
@@ -5581,6 +5581,17 @@ public class ActivityManagerService extends IActivityManager.Stub
             }
         }, pkgFilter);
 
+        IntentFilter fotafilter = new IntentFilter();
+        fotafilter.addAction("com.adups.fota.OUT_UPDATE_SUCCESS");
+        mContext.registerReceiver(new BroadcastReceiver() {
+            @Override
+            public void onReceive(Context context, Intent intent) {
+                Slog.i(TAG,"fota broadcast setproperty执行脚本");

+            }
+        }, fotafilter);
+
         // Inform checkpointing systems of success
         try {
             // This line is needed to CTS test for the correct exception handling

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

相关文章:

  • ASP.NET dotnet 3.5 实验室信息管理系统LIMS源码
  • 2023!6招玩转 Appium 自动化测试
  • WireShark抓包分析TCP三次握手过程,TCP报文解析
  • 【C语言】指针和数组笔试题解析
  • Vue的模板语法(下)
  • Zookeeper客户端——I0Itec-zkClient
  • 火山引擎 ByteHouse:ClickHouse 如何保证海量数据一致性
  • hashmap使用
  • Centos7配置国内yum源
  • C#中async/await的线程ID变化情况
  • 网络安全—黑客技术—自学笔记
  • 功夫再高也怕菜刀。多年经验,会独立开发的机器视觉工程师,技术太强,但是找工作能力差劲
  • numpy的多项式函数: `poly1d`
  • Python灰帽编程——错误异常处理和面向对象
  • 【20230919】win11无法删除Chrome注册表项
  • TCP/IP客户端和服务器端建立通信过程
  • Python ---使用Fake库向clickhouse造数据小案例
  • 09MyBatisX插件
  • 使用 Messenger 跨进程通信
  • Spring Cloud Gateway
  • JVM 优化技术
  • 【MySQL系列】- MySQL自动备份详解
  • 指针笔试题讲解-----让指针简单易懂(2)
  • 使用windbg分析dump文件的方法
  • 【论文阅读 07】Anomaly region detection and localization in metal surface inspection
  • SSM - Springboot - MyBatis-Plus 全栈体系(十一)
  • 深度剖析贪心算法:原理、优势与实战
  • Docker搭建DNS服务器--use
  • “顽固”——C语言用栈实现队列
  • linux内网渗透