![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android Framework
文章平均质量分 91
blueangle17
这个作者很懒,什么都没留下…
展开
-
AndroidAnnotations框架详解
转自:http://m.blog.csdn.net/article/details?id=51579421简介在之前的开发中,你肯定用到了xUtils及ButterKnife等依赖注入框架,你可以使用这些框架来简化你的代码,因为很多代码都是重复性的,对于老司机来说,你肯定不想浪费大量的时间在写一些重复性的东西,比如findViewById之类的代码,所以好的框架的使用对于快速开转载 2017-02-06 14:54:30 · 369 阅读 · 0 评论 -
Android中Context详解 ---- 你所不知道的Context
本文原创 ,转载必须注明出处 :http://blog.csdn.net/qinjuning 前言:本文是我读《Android内核剖析》第7章 后形成的读书笔记 ,在此向欲了解android框架的书籍推荐此书。 大家好, 今天给大家介绍下我们在应用开发中最熟悉而陌生的朋友-----Context类 ,说它熟悉,转载 2017-07-07 14:41:43 · 212 阅读 · 0 评论 -
分析Android中应用的启动流程
转自:http://www.jb51.net/article/90983.htm前言在我们开始之前,希望您能最好已经满足以下条件: 1、有一份编译后的Android源码(亲自动手实践才会有更深入的理解) 2、对Binder机制有一定的了解本文启动流程分析基于Android 5.1的源码。为什么是5.1的源码呢?因为手边编译完的代码只有这个版本…另外,转载 2017-07-07 15:36:00 · 272 阅读 · 0 评论 -
ActivityRecord、TaskRecord、ActivityStack
转自:http://blog.csdn.net/kebelzc24/article/details/53747506本文基于Android 7.0每一个ActivityRecord都会有一个Activity与之对应,一个Activity可能会有多个ActivityRecord,因为Activity可以被多次实例化,取决于其launchmode。一系列相关的ActivityRec转载 2017-07-07 16:02:11 · 716 阅读 · 0 评论 -
android面试题-ActivityRecord TaskRecord和ProcessRecord之间的关系
转自:http://blog.csdn.net/mwq384807683/article/details/72529285源码分析相关面试题Volley源码分析注解框架实现原理okhttp3.0源码分析onSaveInstanceState源码分析Activity相关面试题保存Activity的状态activity的启动模式原理(一)activity的启动模式原理(二)转载 2017-07-07 16:07:41 · 947 阅读 · 0 评论 -
Tasks、 activity 及 activity stack
转自:http://www.cnblogs.com/yaozhongxiao/archive/2013/10/12/3365345.htmlTasks、 activity 及 activity stack一、 Activity的四种加载模式 Activity之间的跳转,或者说加载一个新的Activity,一般对于开发者来说,都不是一个太难的问题。直到后来随着不断的深入,才发现转载 2017-10-27 16:05:51 · 255 阅读 · 0 评论 -
linkToDeath机制了解和使用
转自:http://www.jianshu.com/p/e38f08e34686在学习Binder和AIDL的过程中遇到的一些有意思的事情~!linkToDeath机制,我们先看看官网如何介绍:When working with remote objects, you often want to find out when they are no longer valid. There转载 2017-10-30 17:05:24 · 1236 阅读 · 0 评论 -
Android Activity被回收后的处理
Activity为什么会被自动回收处于后台App中的Activity会在系统内存不足时,被系统回收。看看源码就知道咯~~~~当前使用的内存,超过最大内存的3/4就会开始自动回收activity呀 // Watch for getting close to heap limit. BinderInternal.addGcWatcher(new Runnabl原创 2017-11-02 15:24:43 · 4433 阅读 · 0 评论 -
到底是 Activity 被回收了还是进程被杀死了?
不管是安卓的官方文档还是源码注释,处处可见“从 Activity A 跳到 Activity B,当系统内存不足时 A 可能会被回收……”,而且没有明确说明 A 和 B 是否属于同一个 app 或进程。但是,在官方给的 Activity 生命周期图中,却说内存不足时低优先级的进程将被杀死。 那么,内存不足时,到底是 Activity 被回收了呢,还是进程被杀死了呢,还是二者都出转载 2017-11-02 15:26:31 · 2009 阅读 · 1 评论 -
Intent.addFlags() 启动Activity的20种flags全解析
转自:https://www.jianshu.com/p/2bdc16cba04f简介Activity是四大组件中最重要的一个,也是平时开发中接触最多的。与Activity启动行为相关的就是它的启动模式,Standard、SingleTop、SingleTask、SingleInstance这4种launchMode相信大家不陌生,如果不太熟悉可以看这里:https://www.jianshu.c...转载 2018-03-27 14:03:11 · 14547 阅读 · 0 评论 -
Activity、View、Window的理解一篇文章就够了
转自:https://blog.csdn.net/zane402075316/article/details/69822438 要了解这三者之间的关系,我们带着问题通过分析源码一步一步来揭开它们的神秘面纱! 文章有点长,首先要理解Activity、View、Window,我提出了一些问题,这篇文章可以解答如下问题: 1、为什么要设计Activity、View、Wind...转载 2018-05-04 09:27:06 · 160 阅读 · 0 评论 -
从源码出发浅析 Android TV 的焦点移动原理 (上篇)
转自:https://cloud.tencent.com/developer/article/1006289焦点:焦点(Focus)可以理解为选中态,在Android TV上起很重要的作用。一个视图控件只有在获得焦点的状态下,才能响应按键的Click事件。上图中,外面有一个绿色光圈的视图,就是当前有焦点的视图。相对于手机上用手指点击屏幕产生的Click事件, 在使用Android TV的过程中,遥...转载 2018-05-04 15:32:09 · 356 阅读 · 0 评论 -
从源码出发浅析 Android TV 的焦点移动原理(下篇)
转自:https://cloud.tencent.com/developer/article/10062972.2 findNextFocus如果开发者没有指定nextFocusId,则用findNextFocus找指定方向上最近的视图看一下这里的用法focusables.clear();// 2.2.1 找到所有isFocusable的View root.addFocusables(focu...转载 2018-05-04 15:34:58 · 292 阅读 · 0 评论 -
View Focus的处理过程及ViewGroup的mFocused字段分析
转自:http://www.bubuko.com/infodetail-235726.html通过上篇的介绍,我们知道在对KeyEvent的处理中有非常重要的一环,那就是KeyEvent在focus view的path上自上而下的分发,换句话说只有focus的view才有资格参与KeyEvent的处理,所以说focused view在KeyEvent的处理中很重要,我们需要弄清楚明白focus v...转载 2018-05-04 15:36:52 · 398 阅读 · 0 评论 -
Android中so使用知识和问题总结以及插件开发过程中加载so的方案解析
转自:https://blog.csdn.net/jiangwei0910410003/article/details/52312451一、前言Android中有时候为了效率以及平台开发库的支持,难免会用到NDK开发,那么都会产生一个so文件,通过native方法进行调用,开发和调用步骤很简单,这里就不多说了,本文主要来介绍,我们在使用so的时候总是会出现一些常见的问题,而现在插件化开发也...转载 2018-08-13 14:41:50 · 1184 阅读 · 0 评论 -
Android 窗口Flags详解
转自:https://www.jianshu.com/p/567ff949219aAndroid 窗口Flags详解这里主要探讨Touchable,Focusable,OutsideTouchable,TouchModal这四个混合使用的效果。public static final int FLAG_NOT_FOCUSABLE = 0x00000008;public st...转载 2018-11-01 11:12:17 · 2903 阅读 · 0 评论 -
Input系统:ANR原理分析
转自:http://www.qingpingshan.com/m/view.php?aid=191258基于Android 6.0源码, 分析Input事件发生ANR的原理一. ANR概述当input事件处理得慢就会触发ANR,那ANR内部原理是什么,哪些场景会产生ANR呢。 “工欲善其事必先利其器”,为了理解input ANR原理,前面几篇文章疏通了整个input框架的处理流程,都是...转载 2018-11-15 15:44:45 · 4681 阅读 · 0 评论 -
Android自定义属性,format详解
转自:https://blog.csdn.net/pgalxx/article/details/67666771. reference:参考某一资源ID。 (1)属性定义: <declare-styleable name = "名称"> <attr name = "background" forma...转载 2019-04-26 14:26:27 · 302 阅读 · 0 评论 -
Leanback教程
Leanback教程:http://corochann.com/android-tv-application-hands-on-tutorial原创 2017-04-27 16:02:33 · 2790 阅读 · 0 评论 -
Android中的Loaders机制
转自:http://blog.csdn.net/guoshaobei/article/details/17451647Loaders机制在Android 3.0版本后引入。Loaders机制使一个Activity或者一个Fragment更加容易异步加载数据。Loaders有如下的特性:Ø 它们适用于任何Activity和Fragment;Ø 它们提供了异步加载数据的机制转载 2017-04-27 11:36:23 · 351 阅读 · 0 评论 -
Android开发之Fragment回退栈
转自:http://www.jianshu.com/p/fe16553ca2ca在Android开发之Fragment动态使用一文中,说到replace方法切换Fragment,会造成Fragment不断销毁、创建,但是有没有办法实现像Activity一样通过栈的方式来管理Fragment呢?答案是可以的,本文就来探讨一下。一、Fragment回退栈Activity切换时,转载 2017-05-04 15:34:11 · 5610 阅读 · 1 评论 -
一些关于dagger2的理解(一)
转自:http://blog.csdn.net/shareye1992/article/details/51398554 首先,真实的原理我不准,但是我还是提供我的理解。 阅读这篇文章希望读者能满足一个假设:不管懂不懂,看过一些其他关于dagger2的文章(因为没图、没代码,不便于直观理解)。 在别人的文章里,会说“依赖”,“注入”,这当然是专业的转载 2017-02-06 16:45:01 · 300 阅读 · 0 评论 -
Android任务、进程、线程详解
任务、进程和线程 关于Android中的组件和应用,之前涉及,大都是静态的概念。而当一个应用运行起来,就难免会需要关心进程、线程这样的概念。在Android中,组件的动态运行,有一个最与众不同的概念,就是Task,翻译成任务,应该还是比较顺理成章的。Task的介入,最主要的作用,是将组件之间的连接,从进程概念的细节中剥离出来,可以以一种不同模型的东西进行配置,在很多时候,能够简化上层开发人员的理解转载 2014-06-13 17:07:26 · 706 阅读 · 0 评论 -
android进程与线程详解一:进程
当一个应用的组件开始运行,并且这个应用没有其它的组件在运行,系统会为这个应用启动一个新的Linux进程,这个进程只有一个线程.默认情况下,一个应用的所有组件都运行在一个进程和线程(主线程)中.如果一个应用的组件开始运行,并且已经存在这个应用的线程了(因为这个应用的另一个组件已经运行了),于是这个组件就会在这个已有的进程中启动并且运行在同一线程中.然而,你完全可以安排不同的组件运行于不同的进程,并且转载 2014-06-13 16:03:34 · 576 阅读 · 0 评论 -
Android布局的继承层次
View类1、View代表了用户界面的一块可绘制的区域。每个View在屏幕上占据一个矩形区域。在这个区域内,View对象负责图形绘制和事件处理。2、View是小控件widgets和ViewGroup的父类。 ViewGroup类1、ViewGroup对象是一个特殊的View对象,其功能是装载和管理一组View和ViewGroup。2、ViewGroup是一个转载 2014-05-16 18:13:30 · 1968 阅读 · 0 评论 -
android的消息处理机制(图+源码分析)——Looper,Handler,Message
android的消息处理有三个核心类:Looper,Handler和Message。其实还有一个Message Queue(消息队列),但是MQ被封装到Looper里面了,我们不会直接与MQ打交道,因此我没将其作为核心类。下面一一介绍:线程的魔法师 LooperLooper的字面意思是“循环者”,它被设计用来使一个普通线程变成Looper线程。所谓Looper线程就是循环工作的线程转载 2014-05-16 18:09:37 · 568 阅读 · 0 评论 -
Android AsyncTask完全解析,带你从源码的角度彻底理解
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/11711405我们都知道,Android UI是线程不安全的,如果想要在子线程里进行UI操作,就需要借助Android的异步消息处理机制。之前我也写过了一篇文章从源码层面分析了Android的异步消息处理机制,感兴趣的朋友可以参考 Android Handler、Mess转载 2014-05-16 17:53:37 · 510 阅读 · 0 评论 -
android的消息处理机制(图+源码分析)——Looper,Handler,Message
作为一个大三的预备程序员,我学习android的一大乐趣是可以通过源码学习google大牛们的设计思想。android源码中包含了大量的设计模式,除此以外,android sdk还精心为我们设计了各种helper类,对于和我一样渴望水平得到进阶的人来说,都太值得一读了。这不,前几天为了了解android的消息处理机制,我看了Looper,Handler,Message这几个类的源码,结果又一次被g转载 2014-04-21 09:36:34 · 565 阅读 · 0 评论 -
15_Android四大组件:Activity 、Service、Broadcast receiver 、Content provider
Android四大组件:Activity、Service、Broadcast receiver、Content provider 在Android中,一个应用程序可以使用其它应用程序的组件,这是Android系统一个非常重要的特性。例如,你编写的应用程序需要显示一个可以滚动的图片列表,如果其它某个应用程序已经开发了具有此功能的组件并对外发布了此组件以使其它应用程序能够使用此组件,因此转载 2014-03-11 15:03:35 · 1295 阅读 · 0 评论 -
Android中通知的使用-----Notification详解
Notification —— 通知,是一种让你的应用程序在不使用Activity的情况下警示用户。它是看不见的程序组件(Broadcast Receiver,Service和不活跃的Activity)警示用户有需要注意的事件发生的最好途径。 Notification 是由NotificationManager(系统服务)统一管理的。 一般来说, 一个Notifi转载 2014-03-11 11:15:15 · 714 阅读 · 0 评论 -
Android数据的四种存储方式
Android数据的四种存储方式SharePreferencesSQLiteContert ProviderFile网络存储作为一个完整的应用程序,数据存储的操作是必不可少的。Android系统提供了四种存储数据方式。分别为:SharePreference、SQLite、Content Provider和File。但由于Android系统中,转载 2014-03-10 15:27:08 · 1188 阅读 · 0 评论 -
android Intent常用标识
Intent常用标识:FLAG_ACTIVITY_BROUGHT_TO_FRONT 这个标志一般不是由程序代码设置的,如在launchMode中设置singleTask模式时系统帮你设定。FLAG_ACTIVITY_CLEAR_TOP 如果设置,并且这个Activity已经在当前的Task中运行,因此,不再是重新启动一个这个Activity的实例,而是在这转载 2013-12-12 11:40:25 · 852 阅读 · 0 评论 -
Android四种Activity的加载模式
建议首先阅读下面两篇文章,这样才可以更好的理解Activity的加载模式:Android的进程,线程模型 http://www.cnblogs.com/ghj1976/archive/2011/04/28/2031586.html 其中对“Android的单线程模型”的描述,明白Activity的一些注意事项。Android Application Task Activitie转载 2013-12-12 11:24:44 · 625 阅读 · 0 评论 -
Android的进程,线程模型
Android 包括一个应用程序框架、几个应用程序库和一个基于 Dalvik 虚拟机的运行时,所有这些都运行在 Linux 内核之上。通过利用 Linux 内核的优势,Android 得到了大量操作系统服务,包括进程和内存管理、网络堆栈、驱动程序、硬件抽象层、安全性等相关的服务。 有关Java虚拟机跟进程,线程的关系请参看下面这篇文章:进程、线程与JVM、CLR转载 2013-12-12 11:23:42 · 607 阅读 · 0 评论 -
Android Application Task Activities的关系
什么是Android Application?简单来说,一个apk文件就是一个Application。任何一个Android Application基本上是由一些Activities组成,当用户与应用程序交互时其所包含的部分Activities具有紧密的逻辑关系,或者各自独立处理不同的响应。这些Activities捆绑在一起成为了一个处理特定需求的Application,转载 2013-12-12 11:20:12 · 816 阅读 · 0 评论 -
Android中Handler、HandlerThread、AsyncTask的应用
Android应用程序的消息处理机制由消息循环、消息发送和消息处理三个部分组成的。而Handler、HandlerThread、AsyncTask类在消息处理中极其重要,它扮演者负责处理消息的角色。 1. Handler :废话不多说了,先看下面的代码:[java] view plaincopypackage com.feixun.h转载 2013-07-29 17:19:26 · 1026 阅读 · 0 评论 -
Android开发之RecyclerView的使用全解
转自:http://blog.csdn.net/dmk877/article/details/50816933 自Android 5.0之后,谷歌公司推出了RecylerView控件,RecylerView,我想看到一个新名词后大部分人会首先发出一个疑问,recylerview是什么?为什么会有recylerview也就是说recylerview的优点是什么?recylerview怎么转载 2017-05-02 10:58:51 · 482 阅读 · 0 评论 -
Android Transition
转自:http://www.jianshu.com/p/0af52be90ae6Android Transition Framwork 主要用来做三件事:Activity间的转场动画;不同Activity或Fragment间元素共享,让交互更连贯;同一个Activity之间一些View的变换动画。1.Activity转场效果当从ActivityA切换转载 2017-05-04 14:15:47 · 344 阅读 · 0 评论 -
判断当前进程运行时环境(32/64位)的方法
转自:https://www.jianshu.com/p/eb51edb1ab81问题由来最近项目里添加了64位动态库,即app/libs下的armeabi和arm64-v8a两个存储动态库的目录。项目还有拷贝动态库的需要,即:从apk中将动态库拷贝到指定目录下,然后通过System.load()来加载。问题是:应该拷贝apk中哪个版本的动态库呢?armeabi还是arm64-v8a?...转载 2019-07-01 17:00:43 · 2636 阅读 · 0 评论