利益相关声明:作者与文中产品有直接的利益相关(开发者、自家产品等)

为什么会有这个想法

我一直觉得Mac上最好的工具软件是Popclip,简洁优雅,使用时才会出现,不使用时可以完全遗忘它。

作为一名设计师,曾经很多次尝试入门Swift,但是每次都被Xcode复杂的界面劝退,即使买了《100小时候,请叫我苹果开发者》,也很难有耐心看完。

前一阵待业在家,详细地重新学习了HTML+CSS+Javascript,用ChatGPT辅助,感觉第一次真的进入了编码世界。我的理解是:AI时代,掌握一些基础技能和知识更为重要,能够理解代码,AI自然会帮我实现。

有次在外面骑车,脑袋放空的时候就会有很多想法:Mac上有很多的OCR软件,但是在我看来它们都不够优雅,大多是工程师做出来的,审美会差一些,功能也会塞很满,我能不能做一款类似Popclip,接近于Mac原生,不打扰用户,用完即走的OCR软件呢?

其实Mac本身自带OCR的功能,你预览一张图片,右下角出现文本标识的时候,里面的文字内容就可以直接复制,但是这个功能就类似苹果的Airdrop,时好时坏,有时需要等一会,功能是好的但是跟好用还是有些差距。

我的想法是使用一个快捷键,截屏之后自动把内容复制在剪贴板,直接粘贴即可复制文本。(像Bob、PopTranslate等软件也有这些功能,但是他们多了展示翻译结果的功能,会显得不够简洁)

开始行动

做项目第一步:在GhatGPT新建一个分组,名字也想好了,就叫SimpleOCR。

万事开头难,问了第一个问题之后,项目顺利展开。

第一个问题

然后发现核心功能只需要用引用 Apple 的 Vision 框架就可以。一天之内搭建出了一个可用版本。我一直是在ChatGPT的App中编程,然后用App控制Xcode来修改代码,后来发现这样有一个好处是Plus会员几乎可以一直使用,不像Codex有限额,一个坏处就是它用的是GPT5(后来是GPT5.1),而不是Codex模型。

可用版本出来之后,已经有了新的点子,增加主题和动效,初步想法是做一个猫咪的菜单栏图标,然后找一些猫咪音效,截屏时触发,这样可以让使用软件时增加一些愉悦感,同时不破坏整体的简洁性。

虽然整个软件完全是我跟ChatGPT对话得到的,代码基本也是在用AI改,但是我并不想让它看起来那么AI,我希望它有人工雕琢的痕迹。

菜单栏图标

很多菜单栏软件都没有一个很好的菜单栏图标,有些甚至用线性图标,让整体看起来非常不协调,我准备用像素风格来做图标和动效,做的时候有扩展出了一个熊猫主题的想法,然后就多设计了几个。然后也设计了软件的logo(做logo的时候已经想好要使用Apple新出的Icon Composer App来制作了,所以只设计了形状,颜色在软件里调整)。

SuperSimpleOCR菜单栏图标
SuperSimpleOCR Logo

软件没有做设计图,直接用ChatGPT生成,然后我指挥AI调整细节,最后结果还算满意。(不过因为上架需要截图,而我不想直接截图看起来很粗糙,还是在Figma中画了效果图,完全属于本末倒置了😭)

软件开发完成之后补的设计图

对软件未来的思考

从一开始我想的就是制作一款买断制付费软件,设定的是3美元,每天可以试用5次(对于低频用户来说完全足够)。

多语言问题很早就考虑到了,起初让GPT生成的翻译还有很多不太好的地方,要么太长,要么不是UI中的常用语,后面专门优化了一下,做完之后发现多语言支持这个事情确实有些繁琐,最好是把这一步放在最后,要么临时增加功能之后再适配那就更麻烦了。最终版本支持中文、英文、法语、日语和韩语。

内购模块需要申请开发者账号才可以测试,代码很早就写好了,但是测试时不会弹出内购选项(这个问题在问了AI以及仔细读了《100小时候,请叫我苹果开发者》后才知道怎么解决)。

大概一周的时间,软件开发到一个准备上架的状态,然而这时我的开发者账号一直被拒,出现了没想到的意外。

没想到的意外

万万没想到的是:Apple开发者账号的申请成了整个项目最耗精力的事,事后总结出几点经验,想要申请Apple开发者的一定要注意:

1、在一个Developer App操作所有流程,有问题需要重新提交,也千万不要从一个手机换到另一个手机,或者Mac换到iPhone。

2、提交时不要挂代理,Apple对不干净的节点试图MitM检测非常严格。挂代理访问Developer网站是得不到电话支持的。(开始还以为是Apple客服的bug,骂了一万次娘)

3、换一个新的账号但使用同样的身份大概率还是不行

4、给Tim Cook和苹果行政关系部发邮件确实有反馈,很快就会有专人联系,但如果违反前两条,大概率也没有权限解决。

5、第4条操作完仍然不能解决,传说你的账号(或者说身份)会被封禁2年,我的十几年国区Apple ID就这样成了永远注册不了Apple Developer的账号(对于强迫症来讲这个最难受)

6、身份挂掉之后只能用家人的身份来注册,踩过这些坑之后第二次申请异常顺利

7、最好提前申请Developer账号,然后创建App,App名称是唯一的,会查重,在我做完多语言之后发现要改名真的是异常痛苦。

8、内购内容需要提前在Connect网站部署,而内购可以测试需要你的银行账户审核完成。

测试上架

终于,用我女朋友的Apple ID申请的开发者账号审核通过后,添加内购模块,测试没问题,提交了第一个版本,内心忐忑地等待审核通知。

审核效率还是蛮高,前一天晚上提交的,第二天下午就有结果了:不出意外地被拒。拒绝原因是恢复内购按钮不够明显,还有隐私政策有一些问题,很明确,晚上开始修改。没想到改动的时候出了大问题。

Cursor 和Xcode

无意中发现Crusor也可以编辑Xcode文件,并且Cursor中可以使用Codex模型(Xcode也可以使用,我在自己的电脑开通Apple Intellegence后,Xcode的Codex模型不可用,后面发现可能是我的梯子问题,Apple对节点检测太严格了),在Cursor中编辑之后的Xcode文件,在Xcode中打开后发现资源库不可用了,然后主文件也乱了,完全改不了相关设置,当时是半夜2点,用了ChatGPT给我的办法不仅没有解决,还弄出更多的Bug,只能回退到上个Git,然后莫名其妙好了,可能是提交一个Git之后可以修复?然后凌晨3点改完,测试没问题之后提交了1.01版本。

第二天没有消息,第三天早上睁开眼就发现了Apple的“Congratulations!”邮件,非常激动,很多天的心情都很好,这是属于创造的快乐。

Apple上架成功通知邮件

结尾

如果大家平时有小小的OCR需求,又是Mac用户,可以在Mac App Store下载我的软件:SuperSimpleOCR

体积不到3M,多种主题切换,无感使用。
 

 

 

 

8
3