自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 Android Apk 反编译

如图1是某一个应用程序的apk文件解压缩内容 点击查看可知,xml文件基本打不开,没有源码src文件夹,只能在res文件夹中查看非xml的图片资源,但是经过加密处理过的图片,也是看不到的. apk文件的正常的反编译过程,需要三个重要的工具. 工具一 apktool 执行命令:apktool d com.bibu.popstar_4.apk (解压输出过程如下) 18:06:48 up

2017-07-18 18:14:03 377

原创 Android事件分发机制源码完全解析

第一部分  android按键事件处理流程 keyevent 规则如下: 1.View的各种KeyEvent.Callback接口早于Activity的对应接口被调用; 2.整个处理环节中只要有一处表明处理掉了,则处理结束,不在往下传递; 3.各种Callback接口的处理优先级低于监听器,也就是说各种onXXXListener的方法优先被调用。 举例:当控件没有获取焦点时,只有activ

2017-07-17 19:24:11 410

原创 获取系统信息之Packages.xml文件

Android开机启动的流程中,在系统初始化的时候,PackageManager底层实现类PackageManagerService会去扫描系统中一些特定的目录,并解析其中的APK文件,同时,Android系统把它获取的应用信息,保存在XML文件中,所以系统应用的信息都可以通过解析这个XML文件去查看,当系统中的Apk安装,删除,升级时,这个文件都会被更新,它位于/data/system/目录下,命

2017-07-13 20:20:12 1965

原创 Android Apk 应用信息获取之 PackageManager

Manifest配置图: 图中,可以看到系统对每个节点信息进行了封装, 提供了各种类来存储对应节点的信息,通过PackageManager就可以获取对应的节点信息。PackageInfo 包含了所有的acitity service信息 常用的字段 public String packageName —— 包名

2017-07-13 19:18:27 1945

原创 android系统信息

android系统源代码目录 -Makefile -bionic bionic C库 -bootable 启动引导相关代码 -build 存放系统编译规则等基础开发包配置 -cts Google兼容性测试标准 -dalvik dalvik虚拟机 -development 应用程序开发相关 -external android使用的一些开源模块 -frameworks Fr

2017-07-11 20:16:47 415

原创 Android任务栈简介

1 各个Activity之间是通过Intent连接的,而Android系统,通过栈结构来保存整个App的Activity,栈低的元素是整个任务栈的发起者. 2 当一个App启动的时候,当前环境中没有该App的任务栈,则会创建一个新的任务栈,之后,这个App所启动的所有Activity都将在这个任务栈中被管理,该栈叫Task.即表示若干个Activity的集合,他们的组合形成一个Task,它是一个先

2017-07-06 18:30:44 1425

原创 Activity的生命周期以及四种形态

1 Activity 是与用户交互的第一接口, 通过setContentView(View)方法来给该Activity指定一个显示界面, 并以此为基础提供给用户交互接口. 另外 系统是采用Activity栈来管理Activity的. 2 四种形态Runing/Active 此时Activity 处在Activity栈的最顶层, 处于屏幕最前方,可与用户进行交互 .此时处于运行状态;Paus

2017-07-05 18:45:01 1694

原创 事件拦截机制简单分析

事件拦截机制简单分析 1 ViewGroup来说,有三个重要的事件拦截和处理的方法: dispatchTouchEvent (MotionEvent e) , onInterceptTouchEvent(MotionEvent e), onTouchEvent(MotionEvent e) 2 对于View来说,有两个重要的事件拦截和处理方法: dispatchTouchEvent(Motion

2017-07-05 14:15:42 1060 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除