移动开发

ViewModel源码阅读笔记

MVVM模式实现了数据和页面的分离。ViewModel的生命周期需要跟随引用他的activity或者fragment。接下来我们就来看看,ViewModel是如何实现生命周期的伴随的。 先从ViewModel的创建开始看 XXXViewModel viewModel = new ViewModelProvider(fragment).get(XXXViewModel.class) kotlin

Google第六代Trillium TPU详解

Trillium TPU基本概况Trillium(TPU v6e)是Google于2024年5月15日正式发布、同年12月12日全面向Cloud客户开放的第六代张量处理单元(TPU),是Google十多年AI专用芯片研发的集大成之作。核心定位:专为大规模AI训练和推理设计,特别是针对大语言模型(LLM)、多模态和推荐系统进行优化,是Goog

(一)Flutter 实现 Android CollapsingToolbarLayout折叠布局效果

作为一名Flutter 浩瀚码海 中的一名Android 转学生,最近开发中遇到一个功能,要实现一个类似Android CollapsingToolbarLayout 折叠布局的效果,在Android 开发中我们通过 CoordinatorLayout + AppBarLayout +CollapsingToolbarLayout 来实现这个效果,但是在Flutter 中,则是通过 Slive

RecycleView缓存机制

recycleview代码一万三千多行,内部类26个,看起来感觉无从下手 然而,作为一个控件来讲,将onMeasure()和onLayout() 作为入口方法比较合适。其缓存复用机制,定会蕴藏其中。 先来看onMeasure方法 protected void onMeasure(int widthSpec, int heightSpec) { if (mLayout == null) {

使用VPN后 Mac出现能联网但无法访问网页的问题 <已解决>

使用VPN后 Mac出现能联网但无法访问网页的问题 <已解决> 1. 左上角苹果logo  2. 系统设置 3. 新增位置 4. 新增未命名 5. 选择未命名 其他解决办法 断开vpn后,能联网,发微信没问题,但无法访问页面,然后继续连上vpn在网上查找解决办法,最终在大佬的文章里找到了解决办法 1. 左上角苹果logo  2. 系统设置 3. 新增位置 4. 新增

单例模式(一)—懒汉模式

前言 单例模式模式无需多言,就是只允许生成一个对象,这种设计模式在数据库连接对象的使用上比较频繁,当然在其他场景下也有使用。然而单例模式的实现也有多种方式,今天就让我们来学习下单例模式的懒汉模式。 今天涉及内容: 懒汉模式编写的几个特点 懒汉模式代码实现 懒汉模式优缺点 一. 懒汉模式 编写的几个特点 作为单例模式中的懒汉模式,具有以下特点: 私有无参构造函数 声明静态私有类对象 静态

iOS灵动岛

背景 2022.9.8苹果发布会上,最引人注目的一个功能灵动岛问世,当然整个发布会也只有这一个功能能拿出来提一嘴。对于用户而言灵动岛是一种新的交互式,刘海屏改成了药片屏。对于开发者而言,我们需要研究一下能为我们的APP做些什么。 灵动岛是什么 灵动岛是iphone14Pro的专属特性,是iphone14pro和4 pro max两个产品的交互式。 在这两个系列中,把刘海屏改为药片屏幕,给了传统的

dyld: Library not loaded: /usr/lib/swift/libswiftCoreGraphics.dylib

随着16.0系统正式发布,最近升级xcode14以调试16.0的真机。升级成功后,发现调试11.x和12.x固件的iphone,运行app直接崩溃了,启动不了。 崩溃日志如下: dyld: Library not loaded: /usr/lib/swift/libswiftCoreGraphics.dylib Referenced from: /var/containers/Bundle/App

SDWebImage5.11源码分析(二)

接上一篇文章继续分析SDWebImage5.11的缓存部分 SDImageCache 缓存获取数据,主要是通过key缓存(上一篇文章有说),cacheType判断缓存方式,options进行缓存拓展。主要内容如下: a. 对cacheOptions类型进行筛选 b. 进入queryCacheOperationForKey方法,对具体缓存方式进行划分,其中包括内存缓存,磁盘缓存。然后又在各自缓