首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
【
Android源代码解析之(十三)-->apk安装流程
】的更多相关文章
Android源代码解析之(十三)-->apk安装流程
转载请标明出处:一片枫叶的专栏 上一篇文章中给大家分析了一下android系统启动之后调用PackageManagerService服务并解析系统特定文件夹.解析apk文件并安装的过程,这个安装过程实际上是没有图形界面的,底层调用的是我们平时比較熟悉的adb命令,那么我们平时安装apk文件的时候大部分是都过图形界面安装的,那么这样的方式安装apk详细的流程是如何的呢? 本文我们就来详细看一下apk的详细安装过程,通过本文的学习希望帮助大家大概的了解到Android系统安装Apk文件的基本流程.好…
Android源代码解析之(四)-->HandlerThread
转载请标明出处:一片枫叶的专栏 上一篇文章中我们解说了AsyncTast的基本使用以及实现原理,我们知道AsyncTask内部是通过线程池和Handler实现的.通过对线程池和handler的封装实现了对异步任务操作.很多其它关于AsyncTask相关的内容,可參考我的android源代码解析之(三)–>异步任务AsyncTask 本文我们将解说HandlerThread相关的概念. HandlerThread是什么东西呢?了解一个类最好的方法就是查看类的定义,所以我们就看一下HandlerTh…
Android源代码解析之(六)-->Log日志
转载请标明出处:一片枫叶的专栏 首先说点题外话,对于想学android framework源代码的同学,事实上能够在github中fork一份,详细地址:platform_frameworks_base 这里面基本都是android framework层的源代码了.并且近期发现了一个比較不错的github插件:OctoTree,它 是一个浏览器插件,它能够让你在Github 看代码时,左边栏会出现一个树状结构.就像我们在IDE 一样.当我们看一个项目的结构,或者想看详细的某个文件,这样就会非常方…
Android源代码解析之(三)-->异步任务AsyncTask
转载请标明出处:一片枫叶的专栏 上一篇文章中我们解说了android中的异步消息机制. 主要解说了Handler对象的使用方式.消息的发送流程等.android的异步消息机制是android中多任务处理的基础,Handler是整个android应用层体系异步消息传递的基础组件,通过对Handler源代码的解析的解析相信大家对android中的异步消息机制有了一个大概的了解.很多其它关于android中的异步消息机制的知识可參考我的:android源代码解析之(二)–>异步消息机制 android…
Android源代码解析之(七)-->LruCache缓存类
转载请标明出处:一片枫叶的专栏 android开发过程中常常会用到缓存.如今主流的app中图片等资源的缓存策略通常是分两级.一个是内存级别的缓存,一个是磁盘级别的缓存. 作为android系统的维护者google也开源了其缓存方案,LruCache和DiskLruCache.从android3.1開始LruCache已经作为android源代码的一部分维护在android系统中.为了兼容曾经的版本号android的support-v4包也提供了LruCache的维护,假设App须要兼容到andr…
Android View体系(八)从源代码解析View的layout和draw流程
相关文章 Android View体系(一)视图坐标系 Android View体系(二)实现View滑动的六种方法 Android View体系(三)属性动画 Android View体系(四)从源代码解析Scroller Android View体系(五)从源代码解析View的事件分发机制 Android View体系(六)从源代码解析Activity的构成 Android View体系(七)从源代码解析View的measure流程 前言 上一篇文章我们讲了View的measure的流程.接…
APK安装流程概述
pre { background: none left top repeat scroll rgba(0, 0, 0, 0); border: 1px solid rgba(0, 0, 0, 1); padding: 0.04cm; direction: ltr; color: rgba(0, 0, 0, 1) } pre.western { font-family: "Liberation Mono", "Courier New", monospace } pre…
安卓逆向基础(001)-APK安装流程
1.在/data/app下以报名为文件夹名新建文件夹 APK包存放在这里 以及lib文件 存放so 2./data/dalvik-cache 存放dex dex是dalvik虚拟机可执行文件 3./data/data/ 存放应用数据 刚开始没什么数据 打开apk后资源释放 数据变多 4./data/system/packages.xml 系统把 apk版本 签名 内容提供者 入口点 入口界面等 放在这里 可以用来确认apk是否安装 安装流程: 复制APK安装包到data/app目录下,解压并扫描…
Android 源代码解析 之 setContentView
转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/41894125,本文出自:[张鸿洋的博客] 大家在平时的开发中.对于setContentView肯定不陌生,那么对其内部的实现会不会比較好奇呢~~~有幸最终能看到一些PhoneWindow神马的源代码,今天就带大家来跑一回源代码~~ 1.Activity setContentView 首先不用说,进入Activity的setContentView public void set…
Android Studio 之 打包生成的 apk 安装包装到手机上闪退
今天,在 Android Studio 中的模拟器中测试 app 程序正常,然后打包 apk 安装包程序,发给领导后,领导反馈安装后打开闪退,抓紧安装到自己手机上,发现果然存在闪退.查阅资料后,解决方案总结如下: 1.把 Android Studio 的 Instant Run 给关掉,File → Settings → Build,Execution,Deployment → Instant Run 如图: 注意:应该在“ Project ”状态下进行设置. 2.然后把所有生成缓存清除掉:即删…
Android中APK安装过程及原理解析
[原文] 来自华为内部资料 应用安装是智能机的主要特点,即用户可以把各种应用(如游戏等)安装到手机上,并可以对其进行卸载等管理操作.APK是Android Package的缩写,即android安装包.APK是类似Symbian Sis或Sisx的文件格式.通过将APK文件直接传到Android模拟器或Android手机中执行即可安装. Android应用安装有如下四种方式 1.系统应用安装――开机时完成,没有安装界面 2.网络下载应用安装――通过market应用完成,没有安装界面 3.ADB工…
Android APK安装过程学习笔记
1.什么是APK APK,即Android Package,Android安装包.不同平台的安装文件格式都不同,类似于Windows的安装包是二进制的exe格式,Mac的安装包是dmg格式.APK可以再Android上执行安装,APK的本质是一个Zip压缩包,只是后缀被修改为apk,其中打包了源代码编译出的class.dex.一些图片视屏资源文件和一些Native库文件.APK文件与Zip文件最大的一个不同是APK包含签名文件,用于保证安装包安全不被修改. 2.什么是DEX文件和ODEX文件 J…
《Android源代码设计模式解析与实战》读书笔记(十七)
第十七章.中介者模式 中介者模式也称为调解者模式或调停者模式,是一种行为型模式. 1.定义 中介者模式包装了一系列对象相互作用的方式.使得这些对象不必相互明显作用.从而使它们能够松散耦合.当某些对象之间的作用发生改变时.不会马上影响其它的一些对象之间的作用.保证这些作用能够彼此独立的变化. 2.使用场景 当对象之间的交互操作非常多且每一个对象的行为操作都依赖彼此时,为防止在改动一个对象的行为时.同一时候涉及非常多其它对象的行为,可使用中介者模式. 3.UML类图 (1)Mediator:抽象中介…
Android开发——Android系统启动以及APK安装、启动过程
0. 前言 从Android手机打开开关,到我们可以使用其中的app时,这个启动过程到底是怎么样的? 1. 系统上电 当给Android系统上电,在电源接通的瞬间,CPU内的寄存器和各引脚均会被置为初始状态,CPU复位之后,程序指针会指向启动地址,从该地址读取并直接运行启动程序的可执行代码,或者将可执行代码与数据载入CPU内置的RAM中再运行.这一段代码,放在PC中,叫做BIOS,而在Android等嵌入式系统中就叫做Bootloader. 2. Bootloader引导程序 通过Boo…
Android SVG动画PathView源代码解析与使用教程(API 14)
使用的是一个第三方库android-pathview主要是一个自己定义View--PathView.跟全部自己定义View一样,重写了三个构造方法. 而且终于调用三个參数的构造方法,在里面获取自己定义属性. /** * Default constructor. * * @param context The Context of the application. */ public PathView(Context context) { this(context, null); } /** * D…
使用具体解释及源代码解析Android中的Adapter、BaseAdapter、ArrayAdapter、SimpleAdapter和SimpleCursorAdapter
Adapter相当于一个数据源,能够给AdapterView提供数据.并依据数据创建相应的UI.能够通过调用AdapterView的setAdapter方法使得AdapterView将Adapter作为数据源. 常见的AdapterView的子类有ListView.GridView.Spinner和ExpandableListView等. 本文就以ListView为例解说各种常见的Adapter的使用. 下面是Adapter相关类的关系图: Adapter接口 Adapter源代码链接例如以下:…
Android Activity启动流程, app启动流程,APK打包流程, APK安装过程
1.Activity启动流程 (7.0版本之前) 从startActivity()开始,最终都会调用startActivityForResult() 在该方法里面会调用Instrumentation.execStartActivity()执行(Instrumentation主要用来监控应用程序和系统的交互)启动,execStartActivity()方法里面有2个方法,一个是ActivityManagerNative.getDefault().startActivity()这个方法是执行act启…
android .apk安装时遇到NSTALL_FAILED_CONTAINER_ERROR错误
在一台酷派上装apk时遇到问题: android Installation error: INSTALL_FAILED_CONTAINER_ERROR 遇到问题后baidu google修改为android:installLocation="auto" . 查了一下后,发现在 AndroidManifest.xml中没写android:installLocation, 这样程序默认安装于手机内存. 国产的一些移动渠道机器都是锁死自己的内存,用户程序都只能安装到sd卡上. 相当无聊的制定…
Android权限安全(12)apk安装在sd卡上时,如何保证数据安全
apk安装在sd卡上时,如果把sd卡拿下安在另一个手机B上,那么apk的数据就可以被B里的恶意应用访问了. 下面是android解决这个问题的方案: 绑定设备 1,绑定perDevice使得应用以及应用数据防止Export 2,加密应用数据,把它们放在SD卡的加密隐藏目录 .Android_Secure中 下面是为如何 禁止访问 .Android_Secure 的方法.…
Android APK安装过程介绍
课题路径:从Myfile中点击应用进行安装,到安装完成,过程分析 思想方法:在研究PreloadInstaller的时候我们直接从整个apk的文件结构入手,由整体到部分的分析:但现在整个PMS非常庞大.我们采取抓住某个功能点分析,由点到面,直到掌控全部 目录现象 1log分析 3PackageInstaller 功能的提取 4PackageInstaller/AndroidManifest.xml 4PackageInstallerActivity.java 4In…
Android EventBus源代码解析 带你深入理解EventBus
转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/40920453,本文出自:[张鸿洋的博客] 上一篇带大家初步了解了EventBus的使用方式,详见:Android EventBus实战 没听过你就out了,本篇博客将解析EventBus的源代码,相信能够让大家深入理解该框架的实现.也能解决非常多在使用中的疑问:为什么能够这么做?为什么这么做不好呢? 1.概述 一般使用EventBus的组件类,相似以下这样的方式: public…
在 Linux 中自动生成 Cordova/Phonegap for Android 的 APK 安装程序
在 Linux 中自动生成 Cordova/Phonegap for Android 的 APK 安装程序 本贴首发于: http://xuekaiyuan.com/forum.php?mod=viewthread&tid=15 准备环境 本脚本依赖 p7zip,OpenJDK,PHP 代码说明 设置已编译的不包含网页的 APK 安装程序的路径 SOURCEAPK="./AxureViewer.apk" 设置网页的路径 SOURCEWWW="./www" 设…
【Android】Android 监听apk安装替换卸载广播
[Android]Android 监听apk安装替换卸载广播 首先是要获取应用的安装状态,通过广播的形式 以下是和应用程序相关的Broadcast Action ACTION_PACKAGE_ADDED 一个新应用包已经安装在设备上,数据包括包名(最新安装的包程序不能接收到这个广播)ACTION_PACKAGE_REPLACED 一个新版本的应用安装到设备,替换之前已经存在的版本ACTION_PACKAGE_CHANGED 一个已存在的应用程序包已经改变,包括包名ACTION_PACKAGE_R…
源代码解析Android中View的layout布局过程
Android中的Veiw从内存中到呈如今UI界面上须要依次经历三个阶段:量算 -> 布局 -> 画图,关于View的量算.布局.画图的整体机制可參见博文 < Android中View的布局及画图机制>. 量算是布局的基础.假设想了解量算的细节,可參见博文<源代码解析Android中View的measure量算过程>.本文将从源代码角度解析View的布局layout过程.本文会具体介绍View布局过程中的关键方法,并对源代码加上了凝视以进行说明. 对View进行布局的目…
《Android源代码设计模式解析与实战》读书笔记(十)
第十章.解释器模式 解释器模式是一种用的比較少的行为型模式.其提供了一种解释语言的语法或表达式的方式. 可是它的使用场景确实非常广泛,仅仅是由于我们自己非常少回去构造一个语言的文法,所以使用较少. 1.定义 给定一个语言,定义它的文法的一种表示,并定义一个解释器,该解释器使用该表示来解释语言中的句子. (当中语言就是我们须要解释的对象,文法就是这个语言的规律,解释器就是翻译机.通过文法来翻译语言.) 2.使用场景 1.假设某个简单的语言须要解释运行并且能够将该语言中的语句表示为一个抽象的语法树时…
《Android源代码设计模式解析》读书笔记——Android中你应该知道的设计模式
断断续续的,<Android源代码设计模式解析>也看了一遍.书中提到了非常多的设计模式.可是有部分在开发中见到的几率非常小,所以掌握不了也没有太大影响. 我认为这本书的最大价值有两点,一个是从设计模式的角度去理解Android源代码,结合着日常开发中的经常使用类,对设计模式的理解会更加的深刻:另外一个优点就是了解经常使用模式.再看其它人写的代码的时候,更easy理解代码思路. 以下是我的读书笔记和一些思考,设计模式仅仅整理我认为重要的部分. 建造者模式 建造者模式最明显的标志就是Build类,…
Android xUtils3源代码解析之网络模块
本文已授权微信公众号<非著名程序猿>原创首发,转载请务必注明出处. xUtils3源代码解析系列 一. Android xUtils3源代码解析之网络模块 二. Android xUtils3源代码解析之图片模块 三. Android xUtils3源代码解析之注解模块 四. Android xUtils3源代码解析之数据库模块 关于xUtils3 xUtils 包括了非常多实用的android工具. xUtils 支持超大文件(超过2G)上传.更全面的http请求协议支持(11种谓词).拥有…
Android中HandlerThread的使用及源代码解析
关于Hanlder的基本使用能够參见博文<Android中Handler的使用>,假设想了解Handler.Looper.Thread等的相互关系以及内部实现原理能够參见博文<深入源代码解析Android中的Handler,Message,MessageQueue,Looper>. Android中的API中对HandlerThread的描写叙述是: Handy class for starting a new thread that has a looper. The loope…
《Android源代码设计模式解析与实战》读书笔记(十四)
第十四章.迭代器模式 迭代器模式,又叫做游标模式.是行为型设计模式之中的一个.我们知道对容器对象的訪问必定会涉及遍历算法.我们能够将遍历的方法封装在容器中,或者不提供遍历方法,让使用容器的人自己去实现去吧. 这两种情况好像都能够解决这个问题. 然而在前一种情况.容器承受了过多的功能.它不仅要负责自己"容器"内的元素维护(加入.删除等等),并且还要提供遍历自身的接口:并且因为遍历状态保存的问题,不能对同一个容器对象同一时候进行多个遍历.另外一种方式倒是省事,却又将容器的内部细节暴露无遗.…
《Android源代码设计模式解析与实战》读书笔记(二十)
第二十章.适配器模式 适配器模式是结构型设计模式之中的一个,它在我们的开发中使用率极高,比方ListView.GridView以及RecyclerView都须要使用Adapter. 1.定义 适配器模式把一个类的接口变换成client所期待的还有一种接口,从而使原本因接口不匹配无法在一起工作的两个类能够在一起工作. 2.使用场景 (1)系统须要使用现有的类.但此类的接口不符合系统的须要.即接口不兼容. (2)想要建立一个能够反复使用的类.用于与一些彼此之间没有太大关联的一些类,包含一些可能在将来…