面试
文章平均质量分 64
「已注销」
这个作者很懒,什么都没留下…
展开
-
Android 面试之查漏补缺——---Bindler的理解
概述:Binder是Android系统提供的一种IPC(进程间通信)机制。除了Binder外,android系统还存在其他的IPC通道,例如管道和socket等。Binder相对于其他IPC机制来说,更加灵活和方便。Binder通信是基于C/S架构。在Android中的...原创 2021-03-12 11:02:30 · 621 阅读 · 1 评论 -
Android 8.1 设置settings中添加一个一级菜单item,并屏蔽点击事件,summary可以动态更改
一、在设置的清单文件AndroidManifest.xml 添加入口 <!--添加用户item 20210207 --><!--android:priority="9"加这个属性与位置顺序有关 值越大在分组中越靠前--> <activity android:name="Settings$LoginUserSettingsActivity" android:label="@string/login_user"原创 2021-02-08 11:40:04 · 854 阅读 · 0 评论 -
Android 面试之查漏补缺 Handler
Handler的作用:当我们需要在子线程处理耗时的操作(例如访问网络,数据库的操作),而当耗时的操作完成后,需要更新UI,这就需要使用Handler来处理,因为子线程不能做更新UI的操作。Handler能帮我们很容易的把任务(在子线程处理)切换回它所在的线程。简单理解,Handler就是解决线程和线程之间的通信的。Handler的源码分析:首先来看一下工作图Handler的消息处理主要有五个部分组成,Message,Handler,Message Queue,Looper和ThreadLo原创 2021-03-04 18:02:12 · 166 阅读 · 1 评论 -
Android面试之查漏补缺之Context
、什么是context?这个在我们开发中最熟悉而又陌生的朋友到底是什么呢?可能大家会不约而同的说,是场景,是上下文,但是到底有多少人理解这个原理呢?我简单概括一下,应该有以下几点:①、它描述的是一个应用程序环境的信息,即上下文。②、该类是一个抽象(abstract class)类,Android提供了该抽象类的具体实现类。③、通过它我们可以获取应用程序的资源和类,也包括一些应用级别操作,例如:启动一个Activity,发送广播,接受Intent信息等。说了这三点好像你还有点模糊,那我..原创 2021-03-04 15:46:38 · 209 阅读 · 1 评论 -
Android 操作系统的内存回收机制之默认内存回收、OOM以及lowmemorykiller
Android 操作系统中的内存回收可分为两个层次,即默认内存回收与内核级内存回收,本章重点对默认内存回收机制进行研究,Linux 内核层次的内存回收机制将在下一张介绍。 本章所有代码可参见 ActivityManagerService.java。Android 之所以采用特殊的资源管理机制,原因在于其设计之初就是面向移动终端,所有可用的内存仅限于系统 RAM,必须针对这种限制设计相应的优化方案。当 Android 应用程序退出时,并不清理其所占用的内存,Linux 内核进程也相应的继续存在,所谓”退出原创 2021-03-03 16:43:56 · 327 阅读 · 1 评论 -
Android面试查漏补缺 Android Framework添加系统服务
添加系统服务需要添加aidl,service,manager文件,需要修改SystemServer,Context,ContextImpl下面举例进行说明,主要添加一个服务,用于获取系统时间和版本号1.在frameworks/base/core/java/android/app/下添加aidl文件frameworks/base/core/java/android/app/ISystemStatusManager.aidlpackage android.app; interface ISys原创 2021-03-03 14:53:51 · 178 阅读 · 1 评论 -
android Framework 自定义按键处理
一、驱动层按键值的增加和修改不涉及,只涉及Framework层按键的修改1.、kitkat-mstar-master/frameworks/base/api/current.txt--- a/kitkat-mstar-master/frameworks/base/api/current.txt+++ b/kitkat-mstar-master/frameworks/base/api/current.txt@@ -27443,12 +27443,15 @@ package android.vie原创 2021-03-03 14:37:27 · 279 阅读 · 0 评论 -
应用启动过程
应用启动流程应用启动流程· 1.点击桌面App图标,Launcher进程采用Binder IPC向system_server进程发起startActivity请求· 2. system_server进程接收到请求后,向zygote进程发送创建进程的请求·3. Zygote进程fork出新的子进程,即App进程· 4.App进程,通过Binder IPC向sytem_server进程发起attachApplication请求· 5. system_server进程在收到请...原创 2021-03-03 11:44:28 · 258 阅读 · 0 评论