DevLog:2025年12月24日

1、询问ChatGPT使用Flutter开发的iOS应用,如何打包成用于Mac的版本,ChatGPT指出思路不是把iOS的ipa直接变成Mac版,而是用同一套Flutter代码开启macOS平台支持,然后构建出macOS App(.app),然后再分发,ChatGPT推荐开发一个Flutter macOS桌面端,适配窗口/鼠标/键盘,且同时支持Intel/Apple Silicon两大平台,如果是让iPad App跑在Mac上,仅支持Apple Silicon,且可能会遇到插件/权限的问题

2、若使用ChatGPT推荐的方案,需要开启macOS平台支持,检查插件是否支持macOS,并且需要处理UI/交互的适配,如尽享使用响应式布局,适配鼠标滚轮、右键、hover、快捷键等操作,以及文件选择、拖拽、菜单栏等等

3、以上两点留到后面再修改ChatWith移动端时再看,可以一并询问Cursor能否支持macOS,以及需要做哪些调整

4、今天继续测试修改后的ChatWith for Mac(Swift原生版),上周增加了设置默认模型功能,去掉了自动创建新对话功能,改为提示用户开启新对话,并且新对话直接使用默认模型,还未测试,ChatGPT认为所有网络请求必须在后台线程执行,所有UI更新操作必须在主线程执行,但我没有给它代码,先让Cursor检查下目前是否使用了这种方式

5、Cursor对将AIService.swift进行了两处修改,包括:isLoading和errorMessage的更新现在使用Task { @MainActor in }确保在主线程,stopStreaming()中的isLoading = false现在也在主线程更新,这样整个应用就统一成了网络请求在后台线程执行,UI更新在主线程执行

发表回复