随笔分类 - Android
摘要:最近抽空把Android中的各种动画原理整理了下,后续在慢慢上传上来。
阅读全文
摘要:ViewPager滑动抽搐bug 当只有一个item,并且widthFactor<1时,手指向左,会出现滑动抽搐。 或者所有的offset加起来也<1时,也会出现抽搐。 问题原因 经过一下午代码追踪,找到问题位置: androidx.viewpager.widget.ViewPager#calcul
阅读全文
摘要:新的一年新的开端,最近加班加点学了点新技术,越来越感觉移动端尤其是Android端太卷了…… Compose的一些新概念刚开始时特别难懂,明明每个字都认识,连在一起死活不知道是啥意思,最后硬着头皮看了很多其他博客 和 分析了源码才慢慢明白。 下边是最近的学习笔记: 基础部分没啥好说的,往上一搜有很多
阅读全文
摘要:2.6.0时retrofit支持了kotlin的suspend, retrofit的代码是怎么识别一个方法时suspend函数的呢? private suspend fun testSuspend(key: String, age: Int) { withContext(Dispatchers.De
阅读全文
摘要:view的state源码分析 view的setPressed,setSelected等方法中都会更新state,进而更新显示的drawalbe的状态。 调用会改变state的方法后,都会调用到view.refreshDrawableState() public void refreshDrawabl
阅读全文
摘要:参考 做了2个多月的设计和编码,我梳理了Flutter动态化的方案对比及最佳实现 美团外卖Flutter动态化实践 简介 flutter默认是aot,是没有动态化的;不像rn之类的JavaScript可以jit,是可以动态下发代码实现热更新。 美团和咸鱼都是使用flutter官方的Analyzer库
阅读全文
摘要:参考 http://gityuan.com/flutter/ 从架构到源码:一文了解Flutter渲染机制 Flutter渲染原理学习 Flutter完整开发实战详解(九、 深入绘制原理) Flutter完整开发实战详解(二十一、 Flutter 画面渲染的全面解析) layout 请求layout
阅读全文
摘要:Build流程 BuildOwner.buildScope() 会有两种调用时机: 树构建(应用启动时):runApp() 方法调用的 scheduleAttachRootWidget() 方法,它会构建Widgets Tree、Element Tree与RenderObject Tree三棵树。
阅读全文
摘要:参考 Flutter 是如何渲染的? (juejin.cn) 从架构到源码:一文了解Flutter渲染机制_阿里技术-CSDN博客 每帧的处理过程 我们知道Android上的渲染都是在VSync信号驱动下进行的,Flutter在Android上的渲染也不例外,它会向Android系统注册并等待VSy
阅读全文
摘要:参考 https://www.jianshu.com/p/3a372af38103 蓝牙版本的介绍 深入了解Android蓝牙Bluetooth——《基础篇》 (qq.com) 蓝牙发展至今经历了8个版本的更新。1.1、1.2、2.0、2.1、3.0、4.0、4.1、4.2、5.0。 那么在1.x~
阅读全文
摘要:参考 https://developer.android.com/guide/topics/connectivity/bluetooth-le https://www.jianshu.com/p/3a372af38103 简介 最近公司有个连接设备商蓝牙的小功能,于是把蓝牙相关的api简单过了一下,
阅读全文
摘要:参考 核心 Widget 目录 - Flutter 中文文档 - Flutter 中文资源 布局类组件简介 4.1:布局类组件简介 · 《Flutter实战》 (flutterchina.club) 布局类组件都会包含一个或多个子组件,不同的布局类组件对子组件排版(layout)方式不同。 我们在前
阅读全文
摘要:参考 Flutter 是如何渲染的? (juejin.cn) 从架构到源码:一文了解Flutter渲染机制_阿里技术-CSDN博客 Widget 树,Element 树和 RenderObject 关系 Flutter 中有三棵树:Widget 树,Element 树和 RenderObject 树
阅读全文
摘要:参考 https://developer.android.com/studio/build http://google.github.io/android-gradle-dsl/current/index.html https://developer.android.com/reference/to
阅读全文
摘要:参考 https://dart.cn/guides/language/language-tour 下载 从 Flutter 1.21 版本开始,Flutter SDK 会同时包含完整的 Dart SDK 因此如果你已经安装了 Flutter,可能就无需再特别下载 Dart SDK 了。 可以通过命令
阅读全文
摘要:参考 https://dart.cn/guides/language/language-tour#asynchrony-support https://dart.cn/guides/libraries/library-tour#dartasync asynchronous-programming h
阅读全文
摘要:LiveData粘性事件的问题2 之前在LiveData文章中已经分析过粘性事件的原因了,但是在实际使用中还是遇到了一些问题, 网上的UnstickyLiveData的写法通常是反射修改LiveData.ObserverWrapper.mLastVersion, @Override public v
阅读全文
摘要:def oldRepos = [ // central "https://repo1.maven.org/maven2/", // jcenter "https://jcenter.bintray.com/", // google "https://maven.google.com/", "http
阅读全文
摘要:参考 https://sites.google.com/a/android.com/tools/tech-docs/new-build-system/transform-api https://www.jianshu.com/p/37df81365edf 如何理解 Transform API htt
阅读全文
摘要:参考 https://developer.android.com/kotlin/coroutines https://www.bennyhuo.com/2019/05/27/coroutine-android/ https://juejin.im/post/6854573211418361864 导
阅读全文

浙公网安备 33010602011771号