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

44 天前
 vulgur

2024 ,第 12 周,0318-0324

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

极简日记 iOS

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

内存释放问题

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

经过逐项方法的排查,最终确定问题就出现在读取图片数据上。我尝试了各种方法,减少 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 分钟。

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

杂事

709 次点击
所在节点    写周报
3 条回复
magic3584
44 天前
太佩服肘子哥了,每天一直在学习,我最近从 flutter 的 sqlite 往 coreData 迁移,也一直在拜读博客的文章。
旁路由的话我就用的 N1 ,还有一个 N1 刷了电视盒子。
i979491586
44 天前
肘子 有个好老丈人就是好 哈哈哈(很是羡慕)
vulgur
43 天前
@magic3584 听说 N1 很普遍,但是不想在多一个插电源插网线的电器了,就用 NAS 了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1027267

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX