![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android笔记
文章平均质量分 93
积木zz
这个作者很懒,什么都没留下…
展开
-
《Activity显示界面历险记》—说说View的那些理不清的关系
前言在Activity显示View的过程中,有一些重要的角色总让人理不清,比如PhoneWindow、DecorView、ViewRootImpl。也常常有面试题会问到,他们四者之间的关系?创建的时机?View第一次绘制的时机?等问题。那么今天,就和大家一起从Activity启动开始 看看 到展示出View整个过程中,到底会经过哪些步骤,这之间各角色的关系又如何。动画展示为了方便大家理解,先通过动画的形式给大家展示这几位的关系:源码解析从小爱诞生说起在Activity界面展示之前,它还是个原创 2021-02-22 11:23:16 · 183 阅读 · 0 评论 -
Java反射全解析(使用、原理、问题、在Android中的应用)
前言今天说Java模块内容:反射。反射介绍正常情况下,我们知晓我们要操作的类和对象是什么,可以直接操作这些对象中的变量和方法,比如一个User类:User user=new User();user.setName("Bob");但是有的场景,我们无法正常去操作:只知道类路径,无法直接实例化的对象。无法直接操作某个对象的变量和方法,比如私有方法,私有变量。需要hook系统逻辑,比如修改某个实例的参数。等等情况。所以我们就需要一种机制能让我们去操作任意的类和对象。这种机制,就是反射原创 2021-01-19 13:55:49 · 216 阅读 · 0 评论 -
能否让APP永不崩溃—小光与我的对决
前言关于拦截异常,想必大家都知道可以通过Thread.setDefaultUncaughtExceptionHandler来拦截App中发生的异常,然后再进行处理。于是,我有了一个不成熟的想法。。。让我的APP永不崩溃既然我们可以拦截崩溃,那我们直接把APP中所有的异常拦截了,不杀死程序。这样一个不会崩溃的APP用户体验不是杠杠的?有人听了摇摇头表示不赞同,这不小光跑来问我了:“老铁,出现崩溃是要你解决它不是掩盖它!!”我拿把扇子扇了几下,有点冷但是故作镇定的说:“这位老哥,你可以把原创 2020-12-10 09:30:36 · 225 阅读 · 0 评论 -
探究 | 如何捕获一个 Activity页面上所有的点击行为
前言最近逛wanAndroid论坛,发现一个有趣的问题:如何捕获一个Activity页面上所有的点击行为。一起研究下吧,不想看源码的小伙伴可以直接看文末总结~准备工作先得罗列出页面上的一些点击行为,常用的有:普通View的点击动态add的View的点击Dialog上的按钮点击于是就有了如下代码:class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle原创 2020-12-03 17:02:19 · 815 阅读 · 0 评论 -
线程与更新UI,消除偏见,细谈原理
前言相信不少读者都阅读过相类似的文章了,但是我还是想完整的把这之间的关系梳理清楚,细节聊好,希望你也能从中学到一些。进入正题,大家应该都听过这样一句话——“UI更新要在主线程,子线程更新UI会崩溃”。久而久之就感觉这是个真理,甚至被认为是“官方结论”。但是如果问你,官方什么时候在哪里说过这句话,你会不会有点懵。而且就算是官方说的,也就不一定对的是吧,众所周知,Google官方文档一直都有点说的不清不楚,需要我们进行大量实践得出实际的结论。就好比之前的Android11更新文档,我也是看了好久,通过一原创 2020-11-18 09:35:00 · 134 阅读 · 0 评论 -
谈谈Android项目框架的前世今生
嗨,大家好,今天出了大太阳,真是美好的开始。这篇文章和大家说说Android届流行的三大框架,了解下架构的前世今生,以及我对于这些框架的一些认识和看法。三大框架区别MVC架构介绍Model:数据模型,比如我们从数据库或者网络获取数据View:视图,也就是我们的xml布局文件Controller:控制器,也就是我们的Activity模型联系View --> Controller,也就是反应View的一些用户事件(点击触摸事件)到Activity上。Controller --&原创 2020-10-29 10:40:46 · 172 阅读 · 2 评论 -
Android面试题收录及解答10月刊
前言嗨,大家好,好久不见。一个月没写过文章了,这里跟大家侃侃这中间发生了什么。一个月前呢,想准备面试,就网上随便找找面试题什么的,发现要么就是卖课的,要么就是不给详细回答的或者回答不够深的(也许是我没找到????)。反正稍微有点苦恼,因为我毕竟是个懒人,就想看看面试题,然后自己思考下,顺便看看一些参考回答,看看自己回答的全不全面等等。于是,我就想干脆我自己做这个事吧,就算没人看,也当我自己每天复习下了。于是,我就建了一个小小公众号(小到确实没人看,哈哈哈),每天去找一些大厂的面试真题,然后解答下,然后原创 2020-10-26 09:36:51 · 1570 阅读 · 2 评论 -
Handler:你真的了解我吗?
提到handler,大家都想到些什么呢,切换线程?延时操作?那么你是否了解IdleHandler,同步屏障,死循环的设计原理?以及由Handler机制衍生的IntentService,BlockCanary?这次我们说下Android中最常见的Handler,通过解析面试点或者知识点,带你领略Handler内部的神奇之处。先说下基本的用法和工作流程用法很简单,定义一个handler,重写handleMessage方法处理消息,用send方法通知handler但是主线程和其他线程用法却有点不一样.原创 2020-05-13 17:10:57 · 982 阅读 · 2 评论 -
我保证,这是我最后一次看Android事件分发机制了
这次说下Android中的事件分发机制从开始点击屏幕开始,就会产生从Activity开始到decorview一直到最里层的view一连串事件传递。每一层view或者viewgroup都会首先调用它的dispatchTouchEvent方法,然后判断是否就在当前一层消费掉事件view的事件分发首先上一段伪代码,是在书上看到的,也是我觉得总结的最好的public boolean dispa...原创 2020-05-07 18:13:36 · 460 阅读 · 0 评论 -
Android多线程的五种方式,我该怎么选择
Android多线程在应用中被广泛使用,多线程操作也有多种方法。这次就和大家一起熟悉下Android中多线程的操作方法,以及到底在实际应用场景下该怎么选择多线程操作方法Android中,主要提供了以下几种多线程操作方法:Thread,RunnableHandlerThreadAsyncTaskExecutorIntentService1、Thread,Runnable首...原创 2020-04-17 11:08:05 · 540 阅读 · 0 评论 -
Android内存分析最强攻略(内存泄漏,内存检测)
来,今天来说说Android中的内存分析相关问题。内存介绍现在Android手机运行内存是越来越大了,基本上都是6g,8g。那么内存都这么大了,我们还需要考虑内存泄漏,OOM等问题吗。肯定需要啊,不然我就不用写这篇文章了????。因为虽然Andorid内存越来越大,但是提供给应用的java堆内存却不多,一般好点的手机可能也就512M左右。所以我们还是需要多多考虑应用的内存问题,尽量优化,避免内存...原创 2019-10-09 14:51:32 · 746 阅读 · 0 评论 -
Android应用在国外之各种广告集成(Vungle,AppLovin,Google,Facebook)
来今天简单介绍下国外的一些主流广告平台,主要介绍其中的视频奖励广告Vungle领先的In-app视频广告平台,被Business Insider评为15家热门的未上市广告技术公司。主要应用在游戏类app上,其中娱乐场类游戏占比较高。集成方式:添加依赖dependencies { // Vungle SDK implementation 'com.vungle:publ...原创 2019-09-29 13:51:55 · 3275 阅读 · 1 评论 -
Android崩溃分析之Java 崩溃
来,今天来说说Android崩溃中的Java崩溃。Java 崩溃 简单点说就是在 Java 代码中,出现了未捕获异常,导致程序异常退出崩溃分析遇到崩溃其实很正常,而且随着用户量的增加,覆盖到的设备越来越多,可能越来越多的问题和崩溃就会摆在我们面前,我们需要的是认真仔细地对待这些崩溃,并想办法解决。这里总结了一个崩溃三步走:排个序对于崩溃的问题,我们需要先排个序,优先解决那些重要...原创 2019-09-29 13:51:06 · 388 阅读 · 0 评论 -
Android Studio下Git的两种使用方法(超详细)
提了好久的笔,终于开始写博客了。今天要说的是版本控制工具,作为个人开发者,我一般使用的就是gitoso(码云)管理代码,因为可以建立私人(不公开)的项目。今天我就来讲一讲AndroidStudio下git的两种使用方法。原创 2017-02-28 17:28:43 · 3799 阅读 · 0 评论