<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>subscrption &#8211; Huahua&#8217;s Tech Road</title>
	<atom:link href="https://zxi.mytechroad.com/blog/tag/subscrption/feed/" rel="self" type="application/rss+xml" />
	<link>https://zxi.mytechroad.com/blog</link>
	<description></description>
	<lastBuildDate>Sun, 31 May 2026 15:21:35 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.7.5</generator>

<image>
	<url>https://zxi.mytechroad.com/blog/wp-content/uploads/2017/09/cropped-photo-32x32.jpg</url>
	<title>subscrption &#8211; Huahua&#8217;s Tech Road</title>
	<link>https://zxi.mytechroad.com/blog</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>【独立开发】我的第一个 Vibe Coding App 上线了！从零到 App Store 的两周“缝合”之旅</title>
		<link>https://zxi.mytechroad.com/blog/ai/fist-vibe-coding-app-on-app-store-in-two-weeks/</link>
					<comments>https://zxi.mytechroad.com/blog/ai/fist-vibe-coding-app-on-app-store-in-two-weeks/#respond</comments>
		
		<dc:creator><![CDATA[zxi]]></dc:creator>
		<pubDate>Sun, 31 May 2026 15:21:33 +0000</pubDate>
				<category><![CDATA[AI]]></category>
		<category><![CDATA[app]]></category>
		<category><![CDATA[claude]]></category>
		<category><![CDATA[codex]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[subscrption]]></category>
		<category><![CDATA[vide coding]]></category>
		<guid isPermaLink="false">https://zxi.mytechroad.com/blog/?p=10680</guid>

					<description><![CDATA[断断续续搞了两个星期，我的第一个完全基于 Vibe Coding（氛围编程/AI 辅助编程） 的 iOS App 终于成功上架 App Store 了！ 作为一名纯粹的独立开发者，出于隐私保护，具体 App 的名字和链接这里就不公开了。只能坦白说：它又是一个 Days（倒数日）+ Todo List（待办清单）的“缝合怪”。 似乎现在 AI 辅助开发的独立项目，都逃不过这个产品怪圈。但没关系，市面上的同类 App 确实没法完全满足我的痛点，自己动手，量身定制，用起来才最顺手。 今天想聊聊这两周的心路历程，以及纯 AI 辅助开发、无后端架构在&#8230;]]></description>
										<content:encoded><![CDATA[
<p>断断续续搞了两个星期，我的第一个完全基于 <strong>Vibe Coding（氛围编程/AI 辅助编程）</strong> 的 iOS App 终于成功上架 App Store 了！</p>



<p>作为一名纯粹的独立开发者，出于隐私保护，具体 App 的名字和链接这里就不公开了。只能坦白说：<strong>它又是一个 Days（倒数日）+ Todo List（待办清单）的“缝合怪”。</strong> 似乎现在 AI 辅助开发的独立项目，都逃不过这个产品怪圈。但没关系，市面上的同类 App 确实没法完全满足我的痛点，自己动手，量身定制，用起来才最顺手。</p>



<p>今天想聊聊这两周的心路历程，以及纯 AI 辅助开发、无后端架构在 iOS 生态里踩过的那些大坑。</p>



<h2 class="wp-block-heading"><img src="https://s.w.org/images/core/emoji/15.0.3/72x72/1f9e0.png" alt="🧠" class="wp-smiley" style="height: 1em; max-height: 1em;" /> 从 SwiftUI 小白到“缝合大师”</h2>



<p>最神奇的地方在于：<strong>在动工之前，我对 Swift 和 SwiftUI 的知识储备几乎为零。</strong></p>



<p>经过这两周被 AI 疯狂“喂代码”，我竟然也能对着那些 <code>.swift</code> 文件看个七七八八了。虽然让我从头徒手写一个功能依然是不可能的（这辈子都不可能），但现在看着代码改改 View 的高度、换个颜色、调个 Padding，或者微调一下逻辑判断，居然已经轻车熟路。</p>



<p>这种“看不懂全貌但能改局部”的状态，大概就是 Vibe Coding 时代开发者的生存法则吧：只要 AI 框架搭得好，微调补丁没烦恼。</p>



<h2 class="wp-block-heading"><img src="https://s.w.org/images/core/emoji/15.0.3/72x72/1f6e0.png" alt="🛠" class="wp-smiley" style="height: 1em; max-height: 1em;" /> AI 结对编程工具的“轮岗”心得</h2>



<p>在这两周里，我高强度体验了市面上几大主流 AI 模型，可以说是“货比三家”：</p>



<ul class="wp-block-list">
<li><strong>Gemini</strong>：由于已经订阅了了，本想作为主力，但在 Xcode 环境中的实际表现实在有些差强人意。最搞笑的是，有次我让它优化一段逻辑，它贴心地在回复里写了一行：<code>// keep the original code</code>，<strong>然后反手就把我原本那几百行代码全删了，只剩下一个空壳函数吐在屏幕上。</strong> 当时我盯着屏幕，CPU 都快烧了：我是让你优化，不是让你给我搞“极简主义”啊！</li>



<li><strong>Claude Agent</strong>：聪明是真的聪明，代码质量极高，但<strong>太贵了</strong>！高频对话下那个 Token 的消耗速度，钱包高呼吃不消。</li>



<li><strong>ChatGPT (Codex/Plus)</strong>：最后只能转战Codex，Plus的每个月 $20 的订阅费，limit不高，一个小功能可能就要2%的周用量，但省省、省着用，勉强够用。性价比目前最高。</li>
</ul>



<h2 class="wp-block-heading"><img src="https://s.w.org/images/core/emoji/15.0.3/72x72/1fae0.png" alt="🫠" class="wp-smiley" style="height: 1em; max-height: 1em;" /> 翻车现场：跟 AI 死磕“液态玻璃”特效</h2>



<p>既然是量身定制，免不了想在 UI 上搞点视觉高光。我当时脑子一热，非要在主界面搞一个炫酷的<strong>液态玻璃（Liquid Glass/Gooey）交互特效</strong>。</p>



<p>于是我开始指挥 AI 疯狂输出 SwiftUI 代码。结果这一折腾，直接死磕了好几天：</p>



<p>AI 一会儿给出一堆复杂的 <code>Canvas</code> 加上各种高级滤镜；一会儿让模拟器掉帧到卡顿；一会儿在实机上渲染出来一团浆糊。</p>



<p>跟 AI 在这卷了好几天，改了无数个版本后，我终于精疲力竭地悟了：<strong>现阶段的 AI 在处理这种极其玄学的、高阶定制的图形渲染和动效时，底层逻辑还是差了口气。</strong> 最后我心一横，直接把这堆花里胡哨的代码全删了，老老实实换回了系统自带的 <strong>TabView</strong>。嗯，真香，省电且稳定。看来现在的 AI 也就那样嘛，高难度整活儿的时候还是容易现原形。</p>



<h2 class="wp-block-heading"><img src="https://s.w.org/images/core/emoji/15.0.3/72x72/2601.png" alt="☁" class="wp-smiley" style="height: 1em; max-height: 1em;" /> 轻量级技术栈：StoreKit + iCloud Kit</h2>



<p>因为是个人独立项目，为了省心和控制成本，我直接砍掉了服务器，做到<strong>无需注册、无需登录</strong>，纯本地加云端同步。</p>



<ul class="wp-block-list">
<li><strong>存储与同步</strong>：采用 <strong>SwiftData + CloudKit</strong> 的方案。</li>



<li><strong>付费墙</strong>：接入 <strong>StoreKit</strong> 实现 App 内购买。</li>
</ul>



<h3 class="wp-block-heading"><img src="https://s.w.org/images/core/emoji/15.0.3/72x72/1f4a1.png" alt="💡" class="wp-smiley" style="height: 1em; max-height: 1em;" /> 踩坑：被 AI 模型“背刺”的 Data Model</h3>



<p>刚开始的时候，我让 Gemini 帮我设计数据模型（Model）。AI 直接把某些数据类型给<strong>写死了</strong>，完全没有预留扩展空间。导致我后期硬着头皮写了一个 <strong>Migration（数据迁移）</strong>，小心翼翼地把旧字段的数据全部搬到新架构上。</p>



<h2 class="wp-block-heading">搞崩心态的 App Store 上架改名风波</h2>



<p>由于一开始没查重，快收尾时才发现想好的 App 名字<strong>已经被别人注册了</strong>！</p>



<ul class="wp-block-list">
<li><strong>Bundle Identifier</strong>：这个是不能改的。</li>



<li><strong>CloudKit Container</strong>：虽然可以修改，但<strong>伴随着极高的数据丢失风险</strong>。在没有后端备份的情况下，操作起来让人心惊肉跳。最后折腾了一大圈才理顺，建议大家开工前先去 App Store Connect 里把名字占了。</li>
</ul>



<h2 class="wp-block-heading"><img src="https://s.w.org/images/core/emoji/15.0.3/72x72/1f6d2.png" alt="🛒" class="wp-smiley" style="height: 1em; max-height: 1em;" /> StoreKit 订阅审核与测试暗礁</h2>



<p>第一次提交包含 <strong>Subscription（订阅）</strong> 的版本，苹果的审核要求比想象中严格得多。</p>



<p>Xcode 自带的 StoreKit Configuration 虽然方便，但它毕竟是个“模拟器”。<strong>强烈建议在打包前，必须用 Sandbox（沙盒环境）再完整测试一遍。</strong> 很多关于收据验证、跨设备恢复购买的细节，只有在沙盒里才能暴露出真实问题。</p>



<h2 class="wp-block-heading"><img src="https://s.w.org/images/core/emoji/15.0.3/72x72/1f92b.png" alt="🤫" class="wp-smiley" style="height: 1em; max-height: 1em;" /> 留给自己的“后门”：隐藏的开发者模式</h2>



<p>为了方便测试和截 Demo 图，我在代码里做了一些“小手脚”：</p>



<ul class="wp-block-list">
<li><strong>Debug 模式下</strong>：开启了内购豁免，直接绕过 Subscription 限制。</li>



<li><strong>数据工具箱</strong>：内置了大量的数据导入导出、一键生成测试数据的功能。</li>
</ul>



<p>重点来了——为了方便我在正式版里排查问题，<strong>这个“开发者模式”在 Release 模式下其实也可以进入！</strong> 至于触发方式嘛……极其隐蔽，一般人我是不会告诉他的（笑）。</p>



<h2 class="wp-block-heading">结语</h2>



<p>两周的 Vibe Coding，虽然一直在跟 AI “扯皮”、被动效折磨、最后跟苹果的生态规则“死磕”，但看到 App 成功上线的那一刻，成就感还是满格的。</p>



<p>这个 App 完美地实现了我对 Days 和 Todo 的所有幻想。接下来就是自己深度使用，然后继续让 AI 帮我打补丁了。</p>



<p>最终花费：ChatGPT Plus $20 + App 开发者年费 $99 = $120。看来还是要多做几个App才能回本啊～能回本吗？</p>
]]></content:encoded>
					
					<wfw:commentRss>https://zxi.mytechroad.com/blog/ai/fist-vibe-coding-app-on-app-store-in-two-weeks/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
