首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
原理
订阅
我靠注册个名这么麻烦
更多收藏集
微信扫码分享
微信
新浪微博
QQ
13篇文章 · 0订阅
Handler 与异步消息的源码解析
Handler 与异步消息的源码解析
Android中View的绘制流程
View的绘制流程是从ViewRootImpl的performTraversals方法开始,它经过measure、layout和draw三个过程才能最终将一个View绘制出来。 1、measure,即测量的意思,measure方法是在View中,它是final类型,意味着and…
View 的工作原理
就基本概念及三大绘制流程进行简要分析,文章主要理论知识来自 Android 开发艺术探索
从 Android 代码中来记忆 23 种设计模式
从我们平时使用到的 android 的 api 中来记忆设计模式
关于 Android 中为什么主线程不会因为 Looper.loop() 里的死循环卡死?引发的思考,事实可能不是一个 epoll 那么 简单。
本文将会把一下三个问题阐述清楚以及一个网上的普遍观点的补充: 1,安卓 APP 启动过程,对于 Activity 的 onCreate 等生命周期的函数为什么不会因为 Looper.loop() 里的死循环卡死而永无机会执行。 2,在 1 的基础上,View 的绘制到底是怎样完成的,它又为什么不会因为 Looper.loop() 里的死循环卡死而永无机会刷新。 3,网传的观点大概如下: 1.handler 机制是使用 pipe 来实现的 2. 主线程没有消息处理时阻塞在管道的读端 3.binder 线程会往主线程消息队列里添加消息,然后往管道写端写一个字节,这样就能唤醒主线程从管道读端返回,也就是说 queue.next() 会调用返回 4.dispatchMessage() 中调用 onCreate, onResume 4,子线程真的不能刷新 UI ?
Android 保存私密信息-强大的 keyStore
利用 Android 密钥库系统,您可以在容器中存储加密密钥,从而提高从设备中提取密钥的难度。在密钥进入密钥库后,可以将它们用于加密操作,而密钥材料仍不可导出。此外,它提供了密钥使用的时间和方式限制措施,例如要求进行用户身份验证才能使用密钥,或者限制为只能在某些加密模式中使用。
响应式编程在 Android 中的应用
长文慎入,一篇对于 RxJava 的 #深度而全面# 的解读(认真脸,嗯嗯)
开发笔记之你弄不懂的JAVA反射机制
_寒鸦, FrigidCrow我热爱编程, 代码让我快乐, 我认为上帝就是最强大的程序员, "Hello World"真正的开辟了一个世界. JAVA反射机制, 啧啧, 当你看到这几个字的时候就有一种不好的预感, 没错, 这个东西是不怎么好理解, 所以特开此篇, 从实用的角度,…
Android 硬件加速原理与实现简介
在手机客户端尤其是 Android 应用的开发过程中,我们经常会接触到 “硬件加速” 这个词。由于操作系统对底层软硬件封装非常完善,上层软件开发者往往对硬件加速的底层原理了解很少,也不清楚了解底层原理的意义,因此常会有一些误解,如硬件加速是不是通过特殊算法实现页面渲染加速,或是通过硬件提高 CPU/GPU 运算速率实现渲染加速。 本文尝试从底层硬件原理,一直到上层代码实现,对硬件加速技术进行简单介绍,其中上层实现基于 Android 6.0。
Handler 源码分析 - Java 层
Handler 最常见的使用场景就是下载回调,为了不影响用户体验 Android 不支持在主线程中进行耗时时操作,长时间的耗时操作会产生 ANR 异常,而下载无疑是耗时操作,所以我们会在子线程中进行下载。但,下载完毕进行 UI 操作却会发生异常,原来谷歌为了不让 UI 的操作出现冲突 (线程的不可确定性),所以规定只能在子线程中进行 UI 操作,可这就尴尬了... 即不让在主线程中进行联网操作,又不让在子线程中进行 UI 操作,我们如何将告诉主线程我们已经下载完毕了呢?这时就要用到 Handler 了.