Win11 开发测试
Windows 上没有 iOS 模拟器(那是 Mac 专属)
所以我们的测试方式是:
npx expo start,扫终端弹出的二维码,改代码手机上实时刷新。npx expo start --web 也行,但以手机上的真实效果为准。跑通了、能用了就算过。
cd D:\
mkdir code
cd code
-
这个文件夹以后专门放你的代码项目。
类似于你在 D 盘建了一个:“我的编程项目仓库”
-
cd code
-
意思是进入 code 文件夹
npx create-expo-app@latest my-app
-
cd my-app
npx expo start
-
最后弹出这样的画面

cd my-app
npx expo start
-
跑起来后,终端里会出现一个二维码。

手机连上
create-expo-app@latest 刚建的项目用的是更新的 SDK(55 或更高),所以 Expo Go 带不动,才报"需要更新版本"。解决办法:把项目从 55 降到 54,迁就手机上的 Expo Go 就行。
电脑上,在你的项目文件夹里(D:\code\my-app)依次跑:
如果报错,就按以下步骤
--
1. 加一个配置,让 npm 容忍这种版本冲突:
Set-Content -Path .npmrc -Value "legacy-peer-deps=true"2. 把装乱了的旧包和锁文件删掉:
Remove-Item -Recurse -Force node_modulesRemove-Item -Force package-lock.json3. 干净重装一遍:
npm install(这次有了 .npmrc,不会再因为冲突中断)
4. 再让 expo 把所有包对齐到 54:
npx expo install --fix(这回应该能顺利装完,不再报 ERESOLVE)
5. 清缓存启动:
npx expo start -c跑完用手机相机重新扫码。
-
如果一切OK
那么你扫完大概率就可以开始开发..........了吗?

ok 遇到问题 解决问题
我们现在咨询下claude
得出结论
我的 expo-router 项目报 "Element type is invalid... got undefined, check render method of TabLayout",帮我检查 app/(tabs)/_layout.tsx 里的所有 import 是否正确,特别是图标库和 Tabs 的引入方式
-
ok 终于可以了

截图里这个跑着 Metro 的 cmd 窗口,是开发服务器。
它的作用:你电脑上的代码一改,它就实时打包推给手机。 - 开发全程都要让它开着
,千万别 Ctrl+C 关掉。关了手机 app 就连不上了。 几个常用快捷键(光标在这个窗口里按): 按 r= 重新加载 app按 m= 调出手机上的菜单按 w= 在电脑浏览器里打开(改 UI 时用浏览器看更快)
-
ok 我们这边让cc帮我们写第一个效果,卡片左右滑动切换


ok
我们获得了一个非常简单的日语背诵小app
那么添置下一个功能吧
就像搭积木一样

接着它帮我继续部署了其他功能,再向我询问是否继续添置功能,相当的智能呢。

我们来简单看看结果吧

EAS 云端打包
接下来就需要 Apple 账号已经批下来(打包要给 App 签名,得用你的账号凭证)。
装 CLI: npm install -g eas-cli,然后eas login(用 Expo 账号)。eas build:configure——它会生成 eas.json配置文件。打 iOS 生产包: eas build --platform ios --profile production中途会问你 Apple 账号、要不要让 EAS 帮你管签名证书——全部让它自动管(选 Yes),这是 Windows 用户最省心的方式,别自己手搓证书。 然后云端开始编译,你等着就行,出一个 .ipa。
提交并上架
1去 App Store Connect(appstoreconnect.apple.com)建一个 App 记录,填上跟你 bundleIdentifier 对应的信息。
eas submit --platform ios,它会一步步引导你把包传上去。所有 iOS 提交都会上传到 App Store Connect,处理完(通常 10–15 分钟)后出现在 TestFlight。 Expo Documentation提审后就是等苹果审核,过了才真正出现在商店里。
以上就是我们今天从零做APP的全流程了,如果喜欢,不妨关注本公众号【你想见的一面镜子】,未来持续输出有价值的文章,感谢观看~下次见。
夜雨聆风