Swift 从 ObservableObject 迁移到 @Observable 的再讨论
前文已经讨论过了 从 ObservableObject 迁移到 @Observable 的实施步骤,在实际迁移中还需要考虑与 Swift 其他特性的冲突与兼容。
视频帧截图(Video2Frame)专业视频抽帧截图工具
视频帧截图(Video2Frame)是一款功能强大的视频处理工具,专为需要高质量图片提取的用户打造。无论是专业视频编辑人员还是普通用户,都能轻松从视频中提取每一帧的精彩瞬间。
录音记事本 - 专业安全的录音工具 App
8 月份,我使用 SwiftUI 重构了「云录音」App,并将其重命名为「录音记事本」。经过 10 多个版本的迭代,目前「录音记事本」App 的功能已经足够稳定,现在可以拿出来分享给大家啦。
Swift 从 ObservableObject 迁移到 @Observable
ObservableObject 协议是 SwiftUI 早期的观察机制,Swift 5.9 引入 @Observable 宏作为 Swift 观察的"现代"解决方案。本文讲解从 ObservableObject 迁移到 @Observable。
从 Apple Distribution Managed 证书提取备案所需公钥和 SHA1
这篇短文讲解了如何从 Apple 开发者后台通过 Xcode 自动管理的 Distribution Managed 证书中提取备案所需公钥和 SHA1 值信息
条码助手 iOS 2.0.0 升级指南
全新设计的条码助手 iOS 2.0.0 版本已开放下载,这是一份升级指南请查阅。
SwiftUI Menu checkmark 文本对齐
SwiftUI 中实现 Menu 菜单在有 checkmark 等 icon 情形下的文本对齐,如果使用 Button 或其他自定义 View 很难到达想要的效果,可以使用 Picker 和 Toggle。
C++ RTTI 信息对二进制体积和安全性的影响
RTTI 是 C++ 提供的运行时机制用于确定对象的类型。借助 RTTI,程序可以在运行时识别对象信息,这在处理多态对象时十分有用。但另一方面,RTTI 会在包体积和安全性上可能有负面影响。
SwiftUI 系统颜色表查询
在使用 SwiftUI 开发时,使用系统预置的颜色无论是在 UI 效果还是在可维护性上都是比较推荐的。这里原文转载一篇日语文章,展示了系统颜色值的一览表方便设计开发时查询取用。文章最后还提供了一个 Demo App 可用使用。
读马伯庸《长安的荔枝》
马伯庸深厚的文字功力在《长安的荔枝》这部小说中体现得淋漓尽致,全书行文流畅,措辞考究,读起来非常轻松惬意,感觉就像是在写那个年代真实发生的故事,禁不住让人一口气读完。
SwiftUI List selection 的使用提示
List 是常用的 SwiftUI 组件,在 iOS 中,其构造接口中的 selection 参数必须绑定到 Optional 型,否则 Swift Compiler 会报错。
PHP json_encode UTF-8 中文编码问题
在接入微信小程序文本内容安全识别时,遇到了 json_encode 默认的 Unicode 编码问题,这个隐含的处理导致请求 msgSecCheck 接口一直响应检测通过,修复办法为增加 JSON_UNESCAPED_UNICODE 参数。
我为什么重新运营微信公众号
我还是决定在自媒体平台同步博客网站的内容。还是以个人博客为主,只不过会将内容同步到微信公众号等自媒体平台。多一个平台,就多一个机会让更多人看到,对博客网站的流量也会有正向反馈。
使用 TrollStore(巨魔) 在非越狱设备上安装任意 IPA
使用 TrollStore(巨魔) 软件可以在非越狱手机上安装任意 IPA 软件。TrollStore 提升了安装 IPA 的权限,应用可以通过声明 entitlements 权限突破沙箱限制,因此仅推荐在开发测试设备上使用。
条码助手小程序更新
条码助手,全能条形码专家。支持二维码、一维条形码的识别、制作和管理,是淘宝、快递、电商、仓库管理、资产盘点等场景下必备的效率工具。
iOS 18 中 libdyld.dylib/dyld 的一些变化
libdyld.dylib 作为 应用程序 和 dyld 之间的桥接层,几乎每次大版本的系统更新都会有很多变化。在 iOS 18 系统中 __dyld4 section 所在的 segment 发生了变化。
涨粉神器?解密“抖音黑科技”云端商城
抖音是新媒体的主要阵地之一。围绕抖音进行购买粉丝、播放量、点赞数必然有大量黑灰产在操作,这个是没什么好争议的。市面上一些人却昧良心没底线地将一款公开使用的网址/软件包装成售卖 1580,1598 的产品。
iOS UIDevice name 的变化 和 废弃的 CTCarrier
本文涉及到的 API 变动在 iOS 16 系统上已经生效,在梳理项目代码时发现还有在使用的地方需要修正,这里稍作记录。可以预见,Apple 对用户隐私信息的获取上将会越来越严格,任何 API 只要获取能够定位或区分用户特征的信息都将会受到限制。
百度网址安全中心提示网站存在合规风险
被百度网址安全中心提示网站存在合规风险。本文提供一种对解决这类问题有帮助的思路。在确认网站自身内容合规合法的前提下,问题很可能出在了“外链”上。
Cloudflare使用指南之自定义主机名
这篇文章记录我在使用 Cloudflare 自定义主机名过程中的一些方法和技巧,分享给需要的朋友。「自定义主机名」功能基于 Cloudflare for SaaS,它允许我们通过已经托管到 Cloudflare 网络的域将 Cloudflare 的能力扩展到其它域,非常适合不想或无法将域名托管到 Cloudflare 的情形。
iOS越狱检测之判断特征文件和环境变量的注意事项
严格来讲,如果手机系统存在特征文件,仅能证明其曾经越狱过;读取 DYLD_INSERT_LIBRARIES 环境变量,有值可以确定发生了注入,没有值无法确定是否发生了注入。
HTTPS and HTTP/2 with curl
本文记录了编译支持 HTTPS(基于mbedtls)和 HTTP/2(基于nghttp2)curl 开源网络库的一些细节和踩过的坑。
增加服务正常运行时间监控
受限于服务器的硬件性能,本博客时不时的就要被迫下线,非常有必要增加服务正常运行时间监控。当故障发生时,使我能及时收到报警信息并采取恢复措施。我需要一个接入简单、无需维护且免费的服务正常运行时间监控方案。
CDN 流量由腾讯云切换至 Cloudflare
Cloudflare 是一家来自美国的公司,主要提供内容分发(CDN)、DDoS 防护、Web 应用防火墙(WAF)、云计算等服务,它的大部分产品都有免费计划,适合对用户体验要求不高的中小网站使用。
iOS 15 CLLocation 读取 sourceInformation 崩溃
在 iOS 15 之前,iOS 的 CoreLocation 库提供的定位信息并没有标示数据来源,比如可以通过在 iPhone 手机中插入外置 GPS 硬件,或通过蓝牙连接 GPS 外设等方式达到篡改原始 GPS 数据,而 CoreLocation 很难确切感知到 GPS 信息到底来自 iPhone 还是外部设备。
iOS 越狱检测屏蔽插件 Shadow
Shadow 是一款强大的 iOS 越狱检测屏蔽插件,与 kernbypass 主要模拟非越狱状态文件系统不同,Shadow 胜在提供了更精细更自由的 API Hook 能力。
iOS 内核级越狱检测屏蔽方案:KernBypass
KernBypass 是一款内核级的 iOS 越狱检测屏蔽插件,相比传统的越狱屏蔽检测插件功能更加强大,隐蔽性更强。看川了解到已经有不少付费的插件是基于 KernBypass 开发的。
HarmonyOS的包类型和 ohpm 包管理工具
这是关于 HarmonyOS 的第二篇技术笔记,主要介绍 HarmonyOS 的包类型,以及 ohpm 包管理工具的相关知识。笔记的大部分内容在官方文档都有体现,请以官方文档为准。
解决 Xcode 下载 iOS Simulator 频繁失败的问题
从 Xcode 引导安装 iOS Simulator 套件很容易下载失败且无法断点续传,解决办法是直接从 Apple 开发者网站下载文件手动安装。
互联网公司放假为何如此抠搜
从我这些年的观察来看,互联网公司在春节放假这件事情上普遍保持着近乎一致的抠搜和吝啬。好一点的在国家法定假日安排的基础上多放一两天,次一点的通过调休的方式置换假期,还有很多则是规规矩矩遵照法定假日安排放假。

