CGO 是一种在 iOS 平台上运行 Go 代码的方案。而 WireGuard 一种 VPN 技术,其中包含了一部分 Go 代码,同时项目提供了一个 Makefile 脚本,使用 CGO 来将相关代码编译成 iOS 静态库。 写这篇文章的契机是,因为希望使用 Mac Catalyst 将内部工具带到 macOS 平台,我又回过头去看一年前(恰巧是22年3月)研究 WireGuard 的过程。 发现虽然当时的研究成功,.xcframewrok 文件还在,但是过程已经模糊不清了。另外还需要针对 Mac Cataglyst 构建出新的静态库,所以又要从头进行梳理不过好在是 “模糊不清”,而不是 “一干二净”,多少还记得一些。
最近开始阅读学习 epoxy 的源码,开个新的系列来记录一下学习成功。
虽然国内实际开发用 Swift Package Manager(后称 SPM)的比较少,但是国外的一些开源库里却经常用到。所以经常遇到项目 clone 下来之后,SPM 加载失败导致项目无法运行的问题。 网上关于 SPM 加速的文章也有很多,方法也是五花八门,本文挑选几个进行记录。
下文主要针对各种加圆角的情况进行实践,看看会不会出现离屏渲染的情况。
最近要负责面试,于是各处搜罗了一些面试题,用于笔试(不包含算法),也当作自己的一个复习。
最近要负责面试,于是各处搜罗了一些面试题,用于当面面试使用(非笔试题),也当作自己的一个复习。同时提供了一个我自己角度的评判,仅供参考。
最近写的后端项目需要用到队列,其中有一些东西折腾了好一会儿,在这里记录一下。 Celery 是一个开源的分布式任务队列,可实现异步任务调度、定时任务、任务结果处理等功能。
UICollectionViewCompositionalLayout 是 Apple 在 iOS 13 引入的,用于构建基于组合的 UICollectionView 布局的类。它允许开发者根据一系列的组合布局,更轻松、更灵活地创建复杂的 UICollectionView 布局。 本文主要围绕 UICollectionViewCompositionalLayout 中 “可组合” 这个特性进行讨论。
本篇主要讲解 NSCollectionLayoutGroup 内 “子视图” 的填充方式。 算是为 UICollectionViewCompositionalLayout 的讲解做一些铺垫,毕竟把 Item 的填充方式了解清楚了之后,才能组合多种 Group 来进行更复杂的布局。
本篇文章记录使用 NSCollectionLayoutSection 类的 orthogonalScrollingBehavior 属性的过程中遇到的问题。 通过设置该属性可以控制对应 Section 的滑动效果。
使用 match 命令更新开发证书的时候,遇到了 503 Service Temporarily Unavailable 的报错,搜到解决方案后想着还是记录一下吧。
最近尝试使用 Mac Catalyst 将 App 移植到 macOS 上,打包时遇到了该问题,故记录一下。
文章以图文的形式,记录 Combine 中各操作符的用法以及效果。下文为原文章内容的转载 + 翻译。
本文针对 GitLab-Runner 的配置进行讲解说明。
本文仅针对 macOS 和 Linux 平台,讲解如何注册 GitLab-Runner。Windows 平台不包含在本文介绍范围内。
本文档用于介绍如何搭建适用于构建 iOS 项目的 GitLab-CI 环境。
之前也是对 delegate 怨念颇深——每次都需要检查 deleagte 并且检查是否响应了某个方法。不过那个时候的怨念是来自于 需要写那么一大段代码,而不是怨念性能。
本文介绍 C 与 Objective-C 中的枚举,同时对 Objective-C 中的字符串枚举进行介绍
这篇文章主要是围绕 SQLite,记录总结 SQL 的一些用法。 至于 iOS 中其余的几种存储方式例如 .plist 等,以及数据库的概念,SQL 的概念等,先不做介绍。
实际上 iOS 好像是会在很多地方默认添加上动画的。这些动画倒也还好,但是有的时候就和需求不符就比较烦人了。 前几天偶然的再次查到了这个方法,于是决定开个文章记录一下。 感谢参考1,原作者的总结。本文基本引用自参考1。