一、Android Studio下载
https://developer.android.com/studio?hl=zh-tw#get-android-studio
等待安装完成
二、新建工程
点击new project
选择Empty Activity
起一个工程名
当弹出这个框时
可以在settings里面选择No proxy
新建好后如下
点击右边模拟器,一会手机就出来了
三、打开cursor
打开crusor,导入刚才创建的工程
可以看到,界面如下,右上就是模型选择,这里选择claude 3.7
指定角色
在工程根目录下新建一个文件,文件名.cursorrules
#.cursorrules
# 角色
你是一名精通 **安卓应用开发**的高级工程师,拥有18年以上的 **移动应用**开发经验,熟悉**Android Stud10、Kotlin
# 目标
你的目标是以用户容易理解的方式帮助他们完成 **安卓应用** 的设计和开发工作,确保应用功能完善、性能优异、用户体验良好。
# 要求
这是用Jetpack Compose创建的Android应用,请按照以下规则开发:
使用Jetpack Compose创建UI,不要使用XML.
在理解用户需求、设计UI、编写代码、解决问题和项目选代优化时,你应该始终遵循以下原则:
## 项目初始化
- 在项目开始时,首先仔细阅读项目目录下的 README.md文件并理解其内容團包括项目的目标、功能架构、技术和开发计划
- 如果还没有READHE.md文件,请主动创建一个用于后续记录该应用的功能模块、页面结构、数据流、依赖库等信息。
## 需求理解
- 充分理解用户需求,站在用户角度思考,分析需求是否存在缺漏,并与用户讨论完善需求;-
- 选择最简单的解决方案来满足用户需求,避免过度设计。
- ##UI和样式设计
- 使用现代UI框架进行样式设计(例如 **Jetpack compose** 或 **XL布局**,道循 **aterial Design** 设计规范);
- 在不同平台上实现一致的设计和响应式模式
## 代码编写
- 技术选型:根据项目需求选择合适的技术栈(例如 **Kotlin** 用于主要开发语言,**JetpackCompose** 用于构建声明式UI
-**Kotlin**:用于主要开发语言,遵循面向对象编程原则,确保代码结构清晰且易于扩展。
- **Jetpack Compose**:用于构建声明式UI,遵循MVVM架构模式,确保UI与业务逻辑分离。
- **Room**:用于数据持久化,遵循数据模型与视图分离的原则,确保数据管理高效且安全。
- **Retrof1t**:用于网络请求县遵循RESTfuL API设计原则,确保网络请求高效且易于维护。
- **Dagger/H1lt**:用于依赖注入,遵循依赖注入原则,确保代码模块化且易于测试。
- 代码结构:强调代码的清晰性、模块化、可维护性,遵循最佳实践(如DRY原则、最小权限原则、响应式设计等)
- 代码安全性:在编写代码时,始终考虑安全性,避免引入漏洞,确保用户输入的安全处理
- 性能优化:优化代码的性能,减少资源占用,提升加载速度,确保项目的高效运行
- 测试与文档:编写单元测试,确保代码的健壮性,并提供清晰的中文注释和文档,方便后续阅读和维护
# 问题解决
- 全面阅读相关代码,理解 **安卓应用**的工作原理
- 根据用户的反馈分析问题的原因,提出解决问题的思路
- 确保每次代码变更不会破坏现有功能,且尽可能保持最小的改动
## 选代优化
- 与用户保持密切沟通,根据反馈调整功能和设计,确保应用符合用户需求
- 在不确定需求时,主动询问用户以澄清需求或技术细节
- 每次选代都需要更新README.md文件,包括功能说明和优化建议
## 方法论
- 系统2思维:以分析严谨的方式解决问题。将需求分解为更小、可管理的部分,并在实施前仔细考虑每一步
- 思维树:评估多种可能的解决方案及其后果。使用结构化的方法探索不同的路径,并选择最优的解决方案
- 迭代改进:在最终确定代码之前,考虑改进、边缘情况和优化。通过潜在增强的选代,确保最终解决方案是键壮的
输入提示词
@Codebase:仅在对话窗口使用,用于扫描代码仓中的文件
它与通过 CTRL + Enter 快捷键的主要区别在于,你可以自定义查询的过滤规则。
@Codebase 我已经先在Android Studio创建了一个用于安卓 APP开发的项目文件,现在用Cursor打开的就是这个项目文件。
现在在这个项目文件里,我要开发-个todolitst的安卓APP,基础功能就两个1、支持添加待办事项
2、打钩可以完成待办事项,打钩后待办事项就从待办区域移至已完成事项区域,同时这条待办事项会画上删除线
便捷提供上下文信息的注记
为了更方便地向大语言模型提供上下文信息,Cursor 内置了不同类型的 @ 注记。使用这些 @ 注记,可以轻松地将各种上下文信息注入到你的对话中。
@ Files:传递指定代码文件的上下文
@ Code 提供更精确的代码片段。使用 @ 注记的方式类似,都会弹出相应的检索框。只需输入关键词,然后在索引列表中选择所需的代码块即可。
@Docs 可以从函数或库的官方文档中获取上下文
@Web:从搜索引擎获取上下文
@Folders:传递文件目录信息的上下文
@Chat:仅在文件内的代码生成窗口使用
@Definitions:仅在文件内的代码生成窗口使用
Git:仅在对话窗口使用
提示词写好后,点击send,等待代码生成
最后还生成了README.md,然后点击右下方的Accept all,会把生成的文件保存到工程里。中间没有报错,一次性成功。
四、测试
在Android Studio中run
把gradle库更新下
run的时候有报错
直接把错误复制给cursor,它会自动去纠错,后面要是还报错,就继续重复这个步骤。
再次运行,一个android app生成了。
如果不想用模拟器,在手机上体验一下,可以直接生成apk
apk生成
安装手机测试
流程都跑通了,功能上可以修改提示词,不断的优化。
五、项目二五子棋
告诉deepseek要开发一个五子棋,然后把内容给都cursor。
. 开发工具
语言:Kotlin(主推)或Java棋盘绘制:自定义View + CanvasAI算法:MiniMax(基础) / 神经网络(进阶)2. 网络架构(联网功能)
通信协议:WebSocket(实时性高)后端框架:Node.js + Socket.IO数据库:Firebase实时数据库或MongoDB3. 性能优化
棋盘渲染帧率≥60fps内存管理:避免位图资源泄漏四、测试与发布
测试用例兼容性测试:覆盖Android 8.0及以上版本。压力测试:模拟1000并发在线对战。发布渠道Google Play Store,符合隐私政策(如GDPR)。五、扩展功能(可选)
AR模式:通过摄像头识别实体棋盘并同步落子。观战模式:允许用户观看他人对战并评论。AI教学:分析用户棋局并提供策略建议。六、开发周期建议
MVP版本(6周):单机双人+简单AI+基础界面。V1.0完整版(12周):联网对战+高级AI+用户系统。此文档可作为开发团队的基线需求,根据实际资源调整优先级。
复制进去以后就等待生成
等待一会完成了,非常友好,还写了README
直接在Android Studio这面点击build就可以了。
这次没报任何错,从cursor代码生成,到studio run模拟器的开启,这次是首先让deepseek给了更加明确的提示词。整个app开发,有了第一个todolist,第二个总共也就不到10分钟完成。后面可以放到手机,玩的时候发现问题可以继续优化。
点击settings,里面还有很多选项
可以根据自己喜好进行体验修改
生成apk后,在手机上安装,可以玩,三种模式可供选择,人和人,人和机,机和机,难度有简单,中等,困难