1 回顾 透露一下,本人是双非二本,自从高考失利以后还以为自己要一直这么平凡下去,没想到过了三年终于又给我一个机会让我重新证明了自己,能给我去阿里、头条跟美团的面试机会,最后...
@周蛋蛋 你这个思路很好 我最近搭建一个前端框架正是这样做的。近期在学习java框架,以后有时间再完善Android的东西。
BaseActivity封装1 封装点 1.封装抽象方法 初始化参数 initParams 获取布局资源Id getLayoutResID 初始化视图 initContentView 加载数据 load...
1 封装点 1.封装抽象方法 初始化参数 initParams 获取布局资源Id getLayoutResID 初始化视图 initContentView 加载数据 load...
IntentService IntentService是继承并处理异步请求的一个类,有一个工作线程来处理耗时操作,任务执行完后,IntentService会自动停止。 可以启...
架构分层:应用/模块层、应用框架层、通用技术库、性能优化等。 1.应用/模块层:App+Module+Core。 App:主应用,可按需集成一个或多个子模块。 Module:...
如何降低oom_adj的值,以及如何使得我们应用占的内存最少。 1.省电管理中添加白名单 为该应用设置智能省电,而不是:后台运行10分钟关闭或者禁止后台运行等。 服务进程是没...
来源:扔物线的文章 https://gank.io/post/560e15be2dca930e00da1083 1.同步观察者模式: int drawableRes = .....
Activity -> PhoneWindow-> DecorView-> TitleView(ActionBarContainer->ActionBar)、ContentV...
点击事件的事件分发,就是对MotionEvent事件的分发过程,即当一个MotionEvent产生了以后,系统需要把这个事件传递给一个具体的View。 ViewGroup有该...
WMS Windows Manager Service (WMS),承载着和“界面”有关的数据和属性,管理和“界面”有关的状态。 就像N个演员参演的话剧:WMS是导演、Sur...
策略是外界给的,策略怎么变,是调用者考虑的事情,系统只是根据所给的策略做事情。 状态是系统自身的固有的,由系统本身控制,调用者不能直接指定或改变系统的状态转移。 状态模式是策...
本文主要根据以下著作中的内容整理而来: 何红辉,关爱民.Android源码设计模式解析与实践第2版〔M〕.北京:人民邮电出版社,2017.7 定义 确保某一个类只有一个实例,...
定义 用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象。 特点 原型的是一种创建型的设计模式,主用来创建的复杂的对象和构建耗时的实例。通过克隆已有的对象来创建的新...
定义 使多个对象都有机会处理请求,避免了请求发送者和接收者之间的耦合关系。这些对象形成一条链,请求沿着这条链传递,直到有对象处理它为止。 场景 有多个对象可以处理请求,但具体...
多种算法写在一个类中,根据条件使用if-else调用的常规做法的替代方案。实现主业务逻辑与算法策略的解耦,对多种策略分而治之,结构更清晰。 定义 定义了一系列的算法,并将每一...
装饰模式(Decoraor pattern)也称包装模式(Wrapper),结构型设计模式之一。 定义 动态的给一个对象添加一些额外的职责。就相对于增加功能来说,装饰者模式相...
泛化 一种继承关系,指定了子类如何特化父类的所有特征和行为。 三角箭头的实线,箭头指向父类。 实现 一种类与接口的关系,表示类是接口所有特征和行为的实现。 三角箭头的虚线,箭...
在Android studio 中我们通常是忽略掉下面的文件和文件夹 1、.idea文件夹 2、.gradle文件夹 3、所有的build文件夹 4、所有的.iml文件 5、...
1. 蓝牙权限 蓝牙连接和通讯需要获取相关的蓝牙权限BLUETOOTH和BLUETOOTH_ADMIN。 蓝牙权限是normal级权限,只需要在Manifest里面声明即可,...