首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Joe_H
掘友等级
从android向大前端转移吧
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
9
文章 9
沸点 0
赞
9
返回
|
搜索文章
最新
热门
[译] Flutter,什么是 Widgets、RenderObjects 和 Elements?
你应该思考一下。 是否理解系统的底层实现原理是区分一个优秀程序员的关键。 当你了解什么最有效的时候,你才能更轻松地创建布局和特效,从而节省大量的时间。 这篇文章的目的是向你介绍 Flutter 内部的工作原理,我们将从不同的角度来看 Flutter,理解它到底是如何工作的。 你…
Flutter Android端启动白屏
Flutter 应用在 Android 端上启动时会有一段很明显的白屏现象,白屏的时长由设备的性能决定,设备性能越差,白屏时间越长。 在 Flutter Android 端上,白屏的问题会更加严重,因为除了 Android 应用启动耗时外,还增加了 Flutter 初始化耗时。…
View measure过程详解
我们知道view的布局过程中会先测量自身的大小,其中调用view.onmeasure()方法计算自身大小,并通过调用setMeasuredDimension设置自身大小。如 view 的onmeasure方法: onmeasure方法中包含两个参数:widthmeasuresp…
OkHttp---Interceptors(三)
这篇文章主要分析 ConnectInterceptor ,它是 OkHttp 请求链上的倒数第二个节点,其主要任务就是创建与服务器的连接。 先来看其 intercept() 方法。 这里的代码比较少,创建了一个 HTTP 编解码器HttpCodec和一个连接对象RealConn…
OkHttp-Request-请求执行流程
OkHttp不同版本的代码差异挺大的,本篇文章中分析的源码是基于OkHttp 3.6.0版本进行的。 这两种请求方式都是通过创建一个 Call 来发起的,区别在于同步请求直接调用execute()在当前线程执行,而异步请求则是调用enqueue()将任务加入到队列之中,由调度器…
Gradle断点调试---调试Android-Builder源码
断点调试是阅读源码的一种好方法,能便于理解应用的执行流程,下面介绍如何在AS中调试Android Build Tool代码的方法。 1. 开启Gradle调试 网上方案比较杂,这里介绍自己亲测可用的一种方案,基于Android Studio 3.0。 Menu → Run → …
Android SD卡 全盘文件扫描
在开发的过程中,有时候会遇到需要读取多媒体文件的需求,面对这样的需求,通常我们有两种解决方案:自己扫描全盘文件,或者使用 ContentResolver 读取系统记录。 一般需求不是特别复杂的情况下,直接读取系统数据就OK。以查看系统中文档为例: 调用getDocByTypes…
小米 TYPE_TOAST 悬浮窗无效的原因
设置WindowManager.LayoutParams.type = TYPE_SYSTEM_ALERT,并引导用户打开悬浮窗权限。 悬浮窗在API 18及以下的系统无法接收Touch事件。 API 25中无法同时存在两个Toast类型的悬浮窗,API 25以上系统直接禁止用…
Gradle基础 构建生命周期和Hook技术
对于初学者来说,面对各种各样的Gradle构建脚本,想要梳理它的构建流程,往往不知道从何入手。Gradle的构建过程有着固定的生命周期,理解Gradle的生命周期和Hook点,有助于帮你梳理、扩展项目的构建流程。 任何Gradle的构建过程都分为三部分:初始化阶段、配置阶段和执…
OkHttp Interceptors(二)
本文主要分析 OkHttp 中的 CacheInterceptor 对缓存的处理。 在实际的网络请求过程中,一份响应数据在一定时间内可能并不会发生修改,如果每次响应都传输同一份数据就会造成冗余的数据传输,浪费服务器的带宽,同时也增加了服务器的性能压力。 那么为了解决这些问题,H…
下一页
个人成就
文章被点赞
126
文章被阅读
36,224
掘力值
711
关注了
3
关注者
197
收藏集
0
关注标签
10
加入于
2018-05-18