android基础巩固
文章平均质量分 77
ShanLiang_Build
android开发工程师
展开
-
Android BroadcastReceiver 收不到消息
最近项目里用到了Android的BroadcastReceiver,之前做的项目UI部分内容比较多,所以四大组件其实真正好好用的场景很少。正好写一篇记录一下使用方法和注意事项。本文事例以Kotlin代码实现。简单点理解,BroadcastReceiver是一个广播接收器,用于接收匹配自己Action条件的消息。在使用时,有以下几点需要注意。1、定义/实现 BroadcastReceiver自己需要定义与实现自己的BroadcastReceiver,如:class MyBroad..原创 2022-04-26 15:10:51 · 6083 阅读 · 0 评论 -
RxJava2.0 源码解析
对于一些比较主流的开源框架,其中的一些源码还是需要去看,去了解的。以下基于个人视角,简单解读一下RxJava2.0的源码,挑一些比较常见的重要的地方进行解读。这一段常见的rxjava使用代码。从中可以看到一些基础的知识点。比如观察者与被观察者的绑定。rxjava的底层是基于观察者模式实现的。Observable是被观察者,Observer是观察者。Observer比...原创 2019-07-20 20:28:58 · 611 阅读 · 0 评论 -
Android约束布局
Android约束布局问世已经有一段时间了,对于最初的一些开发者来说,早已习惯了相对布局或线性布局的使用,基本上可以满足日常开发的需求。但是这样一来,约束布局不就没有它存在的意义了吗。从谷歌官方数据来看,约束布局在某些情况下表现要高于线性布局以及相对布局。其特点是层级单一,所有控件均处于同一层级。学习时参考了这篇文章,写的不错。带你了解Android约束布局ConstraintLayo...原创 2019-07-09 15:53:54 · 1280 阅读 · 0 评论 -
如果我是Android面试官十
一、Android 各版本新特性这个先开个坑,以后填。二、Android两种虚拟机Java提供了JVM虚拟机,而Android出于优化的考虑,又提供了自己的虚拟机Dalvik。JVM基于栈架构,每次取数据是从内存中取。Dalvik虚拟机是基于寄存器架构,每次去数据从寄存器中取,效率要比从内存中取要高。二者执行的字节码也不一样,java虚拟机是执行jar文件,而DVM虚拟机是...原创 2018-10-08 16:48:44 · 204 阅读 · 0 评论 -
如果我是Android面试官九
一、Android事件分发机制1、MotionEvent事件MotionEvent事件主要有以下三种类型,ACTION_DOWN、ACTION_MOVE、ACTION_UP。也就是手指按下屏幕,移动,再抬起。2、事件分发的三个重要方法MotionEvent事件最终是要发送到一个具体的View上去执行。而最终要在哪个View去执行,是由View的三个方法共同来决定的。1)publ...原创 2018-10-08 15:25:58 · 317 阅读 · 0 评论 -
Android中ContentProvider使用总结
最近一个小项目里用到了ContentProvider,这正好是我的薄弱环节,作为Android开发这么久,却很少接触ContentProvider的使用,正好借此机会学习总结一下。在谈及ContentProvider之前,我想最好还是先聊一下Android中的数据,SQLite,这样我觉得更体系一些。一、SQLite数据库SQLite是一款轻型数据库,是遵守ACID的关联式数据库管理系...原创 2018-08-17 15:48:13 · 1845 阅读 · 0 评论 -
如果我是Android面试官七
Java集合类作为Android面试中不可缺少的一环,常能区分出面试者Java功底是否厚实。今天整理一篇关于Java集合类的知识。一、什么是SetSet是一个接口,继承于Collection。主要是保证其内部数据的唯一性,即添加相同的数据,会添加失败。常用的实现类有三种,HashSet、TreeSet以及LinkedHashSet。二、HashSetHashSet内部维护了一个Ha...原创 2018-08-16 21:39:50 · 446 阅读 · 0 评论 -
如果我是Android面试官六
Java中的并发是Android面试时常考的一项,今天就来写一篇关于Java并发知识的整理。一、为什么要使用多线程为了更快的执行如果你想要一个程序运行的更快,那么可以将其断开为多个片段,在单独的处理器上运行每个片段。并发是用于多处理器编程的基本工具。并发通常是提高运行在单处理器上的程序的性能。听起来好像不太对,因为在运行并发程序的时候,我们需要增加上下文切换的开销,整体时间会比顺序...原创 2018-08-11 21:01:44 · 310 阅读 · 0 评论 -
Android开发中AAC框架基础概念整理
历时1个多月的重构项目终于结束了,在重构过程中引入了AAC框架,算是对于这个新框架的初探与尝试。看了看自己之前的那篇文章,感觉当时的思考和理解还不够完善,今天打算系统地学习一下AAC。首先,了解一下什么是AAC。一、什么是AACAndroid Architecture Components,实际上是android官方提供的一系列组件,在官网中可以看到,已经出了好多。现在主要应用于处理UI周...原创 2018-08-09 20:53:26 · 4563 阅读 · 0 评论 -
一句话总结设计模式六大原则
一谈到设计模式,相信每一个程序员都会用到,有时候即使你没有刻意的去使用,但是在构建代码时也都无形之中用到了它们。因为它们是正确的,是代码界的真理。今天在网上搜了搜设计模式,无意之中看到了一篇关于设计模式六大原则的文章,写的很不错,开一帖总结整理一下。原文作者连接:设计模式六大原则本文略去一些举例,但就以作者个人的见解进行总结,如果之前没有了解过设计模式六大原则的人,建议去看原文。好了,下面进入正题...原创 2018-06-06 14:28:19 · 496 阅读 · 0 评论 -
AAC框架改造总结
近期主要工作之一是一个模块的AAC框架改造,在此记录一下改造过程中遇到的问题以及一些改造经验。 AAC框架的概念和意义,先不细讲,日后有时间补上。关于AAC框架的概念和意义,在看了官方文档后写了一篇整理:AAC框架中的一些基础概念整理简单来说,AAC是一个将代码结构更加解耦的框架。新引入的livedata,可以与控件绑定,通过监听自身数据的改变通知控件刷新。节省了手动set的过程。...原创 2018-06-04 10:52:55 · 2426 阅读 · 0 评论 -
一天一个知识点(二)
一天一个知识点,第二弹! 首先,让我们来看一道题下列哪些语句关于内存回收的说明是正确的? (b)A、 程序员必须创建一个线程来释放内存B、 内存回收程序负责释放无用内存C、 内存回收程序允许程序员直接释放内存D、 内存回收程序可以在指定的时间释放内存对象答案选B,那么其他答案说的都是什么呢?让我们来看一下android开发中的内存回收。原创 2016-05-22 16:19:43 · 492 阅读 · 0 评论 -
一天一个知识点(一)
离梦想到底有多远,让我试试每天从网上或者书上找一些基础的知识点进行归纳总结。工作也有一段日子了,但是真要是面试起来恐怕自己能说来的技术知识少之又少,关键就在于自己并没有系统的总结自己所用过的知识。有的知识和技术用过一次之后就忘了,必须反复的用或者多看才能记住。话不多说,一天积累一点,我相信总有一天量变会引起质变。Activity的生命周期Activity共有原创 2016-05-19 23:34:48 · 4144 阅读 · 0 评论