Xcode14 下载 watchOS Simulator 失败
Xcode14 为了缩减体积, 将部分组件并未内置在安装包中. 当工程添加了 Watch App 支持, 开始编译时 Xcode 会自动下载 Apple Watch 的模拟器, 否则无法继续编译. 但是使用 Xcode内置的下载又经常下载失败, 报错是网络超时.
Xcode14 为了缩减体积, 将部分组件并未内置在安装包中. 当工程添加了 Watch App 支持, 开始编译时 Xcode 会自动下载 Apple Watch 的模拟器, 否则无法继续编译. 但是使用 Xcode内置的下载又经常下载失败, 报错是网络超时.
什么是链接呢?我们在编写代码的同时也会使用到别人提供的库或者框架,为了让我们的代码能使用这些库,此时我们就需要一个链接器。实际上,链接有两种类型,一种是「静态链接」,它发生在编译构建 App 的时候,这一步骤会影响到构建的耗时以及 App 最终的二进制体积;另外一种是「动态链接」,它发生在 App 启动的时候,这一步骤会影响 App 的启动耗时。
在后面的内容我们将会围绕「静态链接」和「动态链接」两个概念进行讨论,最后还会介绍两个用于定位链接性能的工具:
如果项目是从外部导入或从SVN导入的,本地全部历史都需进行LFS转换,且需保留历史的,请使用以下方式:
如何知道全部的commit历史中哪些文件过大?必须使用(git-lfs/2.7.1及以上版本)
当下社会,实时音视频通话已经成为人们生活、工作中重要的组成部分,如商务会谈、亲朋聊天等。而在通话过程中,总会存在着这样那样的意外情况:可能你坐在飞驰的高铁上——信号时好时坏;又或者在会议途中离开办公室——网络从 wifi 切换到 4G……实现高质量的实时音视频通话需要搭建一座无视距离连接人们的“桥梁”,而这座“桥梁”需要优秀的“基建技术”来保障网络传输的稳定性和可靠性。
在目前的视频直播行业,礼物动画效果越来越酷炫。但由于动画方案和设备性能的原因,动画设计师的好多想法并没有得到很好的还原。YY的动画方案在近10年的时间也是经历了图片序列帧、SVGA、MP4、到现在的支持动态插入元素的YYEVA(YY Effect Video Animate)方案。目前已经基本能够实现设计师所见即所得,充分解放了设计师的想象力,同时能够在体积和性能上取得平衡。
在这篇文章中,我会从原理上去讲解目前市面上和YY的动画方案。也提供对比,以及分析各自的优缺点,方便开发者进行方案的选择。
抖音 Feed 容器在推荐、关注、同城、朋友等多个场景中使用,每个场景都有自身的逻辑和业务,最终汇总在 FeedViewController 中,随着业务的迭代,代码越来越臃肿,面临如下的问题:
GIF 和 Animated WebP 是互联网上最主流的动图格式, 但是在 iOS 开发中, 原生的 UIImage 并不直接支持 GIF 以及 Animated WebP 的展示, 因此有了各种优秀的第三方开源方案, 例如 SDWebImage
以及 YYImage
等. 这篇文章将以我在开发中优化动图的实践为基础, 来介绍不同方案的思路以及优劣, 并给出优化的方案.
在 Objective-C 中, 头文件展开是在预处理阶段处理的, 如果项目头文件过多以及头文件写法不规范, 经常产生各种问题, 比如想找某个头文件是在哪里被导入的, 搜索代码基本搞不定, 比如我想找 ComHelper.h
是在哪里被引入的, 需要先展开头文件