![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
android
文章平均质量分 54
夏末_那场未盛开的梦
心有猛虎,细嗅蔷薇
展开
-
Android面试题及答案
近期打算换工作,所以收集了一点经典安卓面试题,并附上答案。1.如何对Android应用进行性能分析android性能主要是响应速度和UI刷新速度。 (1)函数耗时,可以使用TraceView工具,这是android自带的工具,可用于测量函数耗时的。 (2)UI布局分析。有两块,一块是Hierarchy Viewer可以看到View的布局层次,以及每个View刷新加载的时间,可以很块定位到哪一块l原创 2017-10-10 16:54:43 · 464 阅读 · 0 评论 -
Android ActivityManagerServices基本框架
相信大部分android开发者都对ActivityManagerServices(以后简称AMS)有所耳闻,AMS是Android上层系统中最核心的模块之一,主要负责系统中Activity,service,broadcast,contentprovider的启动,切换,调度及应用程序的管理和调度等工作。在进一步分析之前,先了解一下ActivityManagerServices的主要功能: (1)统原创 2017-10-11 09:44:02 · 844 阅读 · 0 评论 -
Binder机制原理浅析
1.简述Android系统中,设计到多进程间的通信底层都是依赖于Binder IPC机制。比如说,当进程A中的Activity要向进程B中的Service通信,这就需要依赖于Binder IPC,不仅于此,整个Android系统架构中,大量采用了Binder机制作为IPC(进程间通信)方案。 当然也存在部分其他的IPC方式,比如说管道,SystemV,Socket等。那么Android为什么不使用转载 2017-10-12 11:30:15 · 323 阅读 · 0 评论 -
破解手机解锁密码
今日遇到一个售后机器问题,反馈回来之后的机器用户加了图案解锁密码,想要拿log分析定位,必要破解密码复现问题,话不多说,直接上干货。 首先需要一个eng版本的boot.img,利用SP软件替换原生user版本的boot.img,这样售后机器就可以连接adb了。可以使用adb之后就可以做很多操作,比如删除文件。 通过源码分析得知,需要删除使用adb删除对应数据库中的内容,操作如下:1.adb sh原创 2017-11-14 17:19:11 · 4582 阅读 · 3 评论 -
Android自定义View-自定义属性
1.自定义属性的意义上班忙里偷闲写博客,话不多说,我们知道要使用属性的前提是对应的属性应该存在,所以如果要使用我们自己的属性必须先定义才能使用,那么我们应该怎么自定义属性呢?可以查看\sdk\platforms\android-xx\data\res\values目录下找到attrs.xml这个文件,这就是系统自带的所有属性,通过熟悉系统自带的属性规则去自定义属性。我们看一些比较熟悉的:<decla原创 2017-11-20 17:28:38 · 268 阅读 · 0 评论 -
Android四大组件的工作过程(一)-Activity的工作过程
Activity的工作过程在android的开发中经常需要启动一个activity,大家都知道最简单的activity启动方式就是使用startActivity(),那么Activity的工作流程就从这儿开始咯,咳咳。 1.Activity.startActivity(Intent intent) @Override public void startActivity(Intent原创 2017-12-08 11:34:38 · 485 阅读 · 0 评论 -
Android开发中常见的颜色
在android中经常看到设置的颜色为八位的十六进制的颜色值附Android中146种颜色对应的xml色值:<?xml version="1.0" encoding="utf-8"?><resources> <color name="white">#FFFFFF</color> <!--白色 --> <color name="ivory">#FFFFF0</color> <!--象原创 2017-11-16 11:22:04 · 247 阅读 · 0 评论 -
Activity生命周期中onStart()和onResume()的区别
Activity生命周期中onStart()和onResume()的区别在讲onStart()和onResume()的区别之前,必须清楚Activity的四种状态: 1.Running状态:一个新的Activity的启动入栈后,它在屏幕最前端,处于栈的最顶端,此时它处于可见并,可与用户交互的激活装态; 2.Paused状态:当Activity被另一个透明或者Dialog样式的Activity覆盖原创 2017-12-19 10:52:06 · 48512 阅读 · 1 评论 -
Service的生命周期
Service的生命周期Service与Activity一样,是Android的四大组件之一。Activity是看得见的,而Service则是看不见。看得见一般承担显示界面,控制的功能,而Service则承担后台任务。而Service与线程的区别在于,Service是Android的四大组件之一,所以系统不会轻易将其kill。服务可有其他应用组件启动,而且即使用户切换到其他应用,服务仍将在后台继续运原创 2017-12-19 15:54:01 · 477 阅读 · 0 评论