创业日记 独立开发周记 #58:赞美肘子哥

vulgur · 2024年03月26日 · 最后由 vulgur 回复于 2024年03月27日 · 334 次阅读

2024,第 12 周,0318-0324

如释重负的一周,放松了很多。

极简日记 iOS

这周终于提交了一个 TF,主要是围绕导出导出功能做优化:

  • 修复了导出闪退
  • 导出时可以看到图片总数
  • 点击数据文件可以直接打开 App 进行导入
  • 直接将导出的数据文件直接放到 App 的文件夹内,并可以一键打开文件夹

内存释放问题

从上周开始,我就一直在处理导出数据时爆内存的问题。数据比较少的时候还好,但是数据一多,特别是图片内容比较多的情况下,导出时必然会出现因为内存不足而闪退。

经过逐项方法的排查,最终确定问题就出现在读取图片数据上。我尝试了各种方法,减少 fetch limit,加 autoreleasepool,每次循环结束后清空数组,都不行。而且奇怪的是,即使退出导出页面了,被占用的内存也没有释放。

后来在请教了肘子哥之后,肘子哥立刻看出了问题所在,一针见血,一句代码就解决了我的问题。原来我之前使用的是全局的 Environment 托管上下文,改成临时的上下文就 ok 了。

这不是第一次肘子哥帮我解决 Core Data 方面的问题了,在此,赞美肘子哥!

Debug view

为了让用户帮我调试 App,我写了个在非生产环境下才会出现的 debug view。 正好 RevenueCat 也有一个 debug UI,可以显示关于内购的相关信息,就也加进来了。Debug mode 下没有任何问题,但是 Release Mode 就无法编译,archive 也不行,找了半天原因,直到看到 RevenueCat 的文档里有这么一句:

Note: The debug UI won't compile for release builds, so you'll need to disable the behavior before archiving for release.

旁路由

买了大电视后,就特别想在电视上看 Netflix。

最简单的方案应该是 Apple TV,但是没舍得。前些天差点就买了一个软路由,但是看看价格还是舍不得。之前用 NAS 折腾过一次旁路由,失败了。又看了几个教程后发现我的 NAS 完全可以做旁路由,之前失败其实是搞错了方向。

周日花了一下午和一晚上终于搞定了 Nas+OpenWrt。期间遇到了 OpenWrt 可以联网,但是连到 openwrt 的手机无法联网的问题。装了两个不同版本的 openwrt 的镜像,各种瞎鼓捣,又是 opkg,又是配置接口和防火墙,还特意花钱注册了一个论坛账号。

搞定后发现,将电视的 IP 和 DNS 设置成旁路由还是比较麻烦,还不如直接用电脑或者手机投屏了……不过 OpenWrt 还是有很多可玩性的,有待以后慢慢探索了。

认真减肥第三周

本周体重变化不大,但是有新突破,突破了 190 斤,最低 189.7 斤。

有两天的晚饭吃得比较晚,因为特别饿吃得还比较多,万幸没有涨称。

健身 + 游泳

这周只去了两次健身房,周二练背,周五练胸。

泳池终于重新开放了,去年买的游泳三件套终于开封了,去游了 30 分钟。

不服不行,年龄越大,身体恢复就越慢,健身后三天酸痛都没有丝毫减轻。

杂事

  • 周五的时候清空了 Boss 给的任务列表,度过了一个轻松无压力的周末
  • 买了个 69.8 的联想夹耳式耳机,真是一分钱一分货啊,包装和做工都非常差,到手后试听了 1 小时果断退货了
  • 花了一下午折腾在本地用 act 执行 GitHub action,失败
  • 继续上周的 SwiftData 学习,这周看完了 Stewart Lynch 的这个系列视频
  • 看完了网飞版的《三体》,没想到我的时间线上对这个剧评价的两极分化如此严重。我看过原著,也看过腾讯版,我个人倒是觉得网飞版还不错,可以打四星
  • 采用一种新的番茄工作法,写 25 分钟代码,玩一局 Brotato 😜

😅 我是直接买了个 Apple TV, 另外也是想看看有没有机会搞搞 TV 开发. 现在成了 infuse 启动器.

ruris 回复

对啊,ATV 就是 infuse 或者 vidhub 启动器😜

需要 登录 后方可回复, 如果你还没有账号请 注册新账号