首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

APK安装流程详解9——PackageParser解析APK(上)

这些"分割"APK的必须都是有效的安装,同时必须满足下面的几个条件: 所有的APK必须具有完全相同的软件包名称,版本代码和签名证书 所有的APK必须具有唯一的拆分名称 所有安装必须包含一个单一的APK...// APK安装包中 保内广播的Action public ArrayList protectedBroadcasts; // APK安装包中 依赖库的名字...一个包由一个"基础"APK和多个"拆分"APK构成。 这个类其实就是通过解析APK而对应的一个"包"的类,这个包代表一个磁盘上的APK安装包。...它自动会检测安装包的模式的是单一APK或者集群APK模式。 这样就可以对"集群APK"的安装包进行理性的检查,比如会检查"base APK"和"拆分APK"是否具有相同的包名和版本号。...collectCertificates函数获取了应用的签名信息,这些对象都是后续解析中需要用的,因此将这些函数传递给解析函数,这些对象都是后续解析中需要用的,因此将这些参数传递给解析函数,解析完成后关闭资源管理与解析

5.6K10
您找到你想要的搜索结果了吗?
是的
没有找到

APK安装流程详解10——PackageParser解析APK(下)

//将该属性设置为true,则将允许本分管理尝试恢复操作,有的时候版本不匹配表明数据是不兼容的, // 这个时候如果可以恢复到不同的版本的数据,那么应用程序将承受很大风险...// 该属性如果设置了 false,则系统在安装系统的时候不会把so文件从apk中解压出来了 // 同时修改了System.loadLibrary 直接打开调用apk中的.so文件。...安装包,解析这个目录下的所有APK安装包。...同样也执行例行检查,比如检查"base APK"和"拆分APK"是否有相同的安装包包名和版本号。...安装流程详解9——PackageParser解析APK(上)中 五、PackageParse#parseMonolithicPackage(File, int)方法解析 下面我们依次讲解下上面的其他三个方法

4.6K10

Android Apk安装过程解析

本文主要内容 静默安装 apk安装流程简析 installd进程意义 最近工作上遇到静默安装相关的内容,顺便学习一下apk安装的知识 静默安装 静默安装是指apk无感安装,不需要用户确认。...安装流程简析 PackageManager是一个抽象类,应用调用pm安装apk,这中间会发生跨进程调用,因为pms是运行在system进程中的。...之前绑定的服务,在此处主要有两个功能,一是解析apk中的基本信息,比如包名、版本号、安装位置等 pkgLite = mContainerService.getMinimalPackageInfo(origin.resolvedPath...,安装应用以及完成安装,并发送package add等。...installPackageLI方法非常长,它需要验证apk的签名文件,并且详细解析apk中的所有activity、service等信息并加以保存,方法非常非常的长 //收集签名并验证 try {

1.6K60

【原创】Apktools反编译APK,查看apk信息,常用于安装apk失败原因分析。

反编译介绍 背景:在adb install安装apk时我们通常出现各种各样的无法安装的问题。...目的:鉴于部分apk无法安装我们又无法知道原因时,我们需要用到工具apktools进行Apk的反编译 使用原因:为什么要反编译APK呢?...直接将Apk的后缀改成.zip不是也可以直接查看需要的内容吗?...答案:更改apk的后缀.apk为.zip时打开zip中的文件时你会发现是乱码,所以我们需要使用工具进行反编译 需要环境:Window+jdk8 实战教程 测试apk:小米运动 apktool工具下载地址...的版本,sdk版本和对应手机Android版本不同时,则存在兼容性问题,即无法正常安装

1.6K10

LinuxLinux安装Tomcat服务

转载请注明出处:http://blog.csdn.net/qq_26525215 本文源自【大学之旅_谙忆的博客】 上传Tomcat服务: 首先,需要下载Tomcat-上传到服务。...选择tar.gz下载方式,复制下载地址,在linux终端中输入: 在linux中输入: wget -c 下载地址 安装Tomcat服务 解压tomcat服务压缩包 现在已经在java目录下了。...修改tomcat服务的启动端口 cd /java/apache-tomcat-7.0.72/conf/ 进入Tomcat服务的conf目录下: ? 找到server.xml文件。...启动和关闭Tomcat服务 启动Tomcat服务 进入tomcat服务的bin目录 cd /java/apache-tomcat-7.0.72/bin ? 执行”....查看tomcat服务的Log信息,看看tomcat服务是否已经正常启动,进入tomcat服务下的logs目录,打开catalina.out文件进行查看 cd /java/apache-tomcat

1.7K20

APK安装流程详解11——普通应用安装简介

之所以每个应用都要一个userId,是因为Android在系统设计上把每个应用当做Linux系统上的一个用户对待,这样就可以利用已有的Linux用户管理机制来设计Android应用,比如应用目录,应用权限...四、安装流程概述 apk的大体流程如下: 第一步:拷贝文件到指定的目录: 在Android系统中,apk安装文件是会被保存起来的,默认情况下,用户安装apk首先会被拷贝到/data/app目录下...另外一件事就是Linux的用户Id和用户组Id,以便他们可以获得合适的运行权限。...文件的实际路径 final File sourceFile = new File(mPackageURI.getPath()); // 创建APK文件的分析...第六步:获取布局文件中的控件 第七步:从Intent中获取相应的数据信息,为下一步做准备 第八步:创建安装的监听对象 第九步:根据不用的scheme来进行不同安装模式下的安装操作 这个方法里面涉及到三个重要内容如下

7.7K42
领券