- 博客(28)
- 资源 (8)
- 收藏
- 关注
原创 A2A、AG UI、SSE、WebSockets 协议对比与关系解析
摘要 AI Agent生态中的四种协议构成完整技术栈:A2A协议负责代理间通信,AG UI协议处理代理与用户界面交互,SSE和WebSockets提供底层传输支持。A2A标准化代理协作,AG UI实现实时界面更新,SSE适合单向推送,WebSockets支持双向交互。四者协同工作,形成从后台代理通信到前端用户交互的完整链路,满足不同场景需求。A2A和AG UI构建核心功能层,SSE/WebSockets提供传输选择,共同支持AI Agent系统的实时协作与交互需求。
2026-04-22 10:34:12
108
原创 Expo 快速创建 Android/iOS 应用开发指南
本指南详细介绍了使用Expo框架快速创建跨平台移动应用的完整流程。主要内容包括:1) 环境准备与工具安装(Node.js、Expo CLI、Watchman、JDK、Android Studio/Xcode);2) 项目创建与开发流程(初始化、结构说明、启动服务器、运行应用);3) 构建与发布(开发/生产构建、应用商店发布);4) 常见问题解决方案与最佳实践。Expo基于React Native,简化了移动开发流程,支持一套代码同时部署到Android和iOS平台,具有快速启动、热重载、丰富生态等优势。指南
2026-04-10 13:16:53
291
原创 ~/.zshrc 和 ~/.bash_profile 详细介绍与区别
摘要:本文比较了macOS中.zshrc和.bash_profile两个配置文件的区别。.zshrc用于zsh shell,每次终端会话启动时加载,适合设置命令别名和自动补全;.bash_profile用于bash shell,登录时执行一次,适合设置系统环境变量。推荐的分层配置方案是:在.bash_profile中设置基础环境变量(如Android SDK路径、API密钥等),在.zshrc中加载.bash_profile并添加zsh特有配置(如NVM),这样能保证bash和zsh环境的一致性。
2026-04-10 13:01:09
103
原创 AI领域的“MCP”是什么
摘要:AI领域的"MCP"通常指模型上下文协议(Model Context Protocol),由Anthropic公司提出,旨在标准化AI大模型与外部资源的连接。该协议提供统一规范,使模型能安全调用数据库、API等外部功能,实现"即插即用"的扩展能力。其核心特点包括标准化连接、动态上下文扩展及安全可控的访问权限,类似于AI模型的"USB标准",无需重新训练即可增强模型功能。
2026-03-03 10:18:35
45
原创 操作指南:指导AI根据UI图生成代码
摘要:本文系统介绍了如何将UI设计图高效转化为代码的AI协作方法。核心提出"消除歧义"原则,强调需通过结构化提示词(Prompt)将视觉信息转化为技术规格。方法分为三阶段:1)准备工作,明确技术栈和补充隐形逻辑;2)构建超级提示词框架,包含角色设定、技术栈要求等结构化模板;3)执行策略与迭代优化,采用分步生成法并利用AI视觉识别校对。文章还分享了高级技巧如指定设计系统、要求像素级还原等,最终形成从截图到代码的完整工作流,将AI转化为高效的前端开发助手。(149字)
2026-03-03 10:14:35
773
原创 Prompt(提示词) 和 Skill(技能)区别
Prompt和Skill是AI应用中的两个关键概念:Prompt是单次输入的指令(如"写一份活泼的上海天气周报"),具有临时性和即时性;而Skill是模块化的能力封装(如"财务分析"技能),包含预设Prompt、规则和工具调用逻辑,可复用且工程化程度高。两者的核心区别在于生命周期(单次vs持久)、触发方式(手动输入vs自动加载)和内容构成(简单指令vs复杂模块)。实际应用中,用户输入首先触发Agent决策,再加载对应Skill的专业Prompt和工具,最终输出标准化结
2026-03-02 16:40:25
1102
原创 Skill(技能)是什么?
AI中的Skill(技能)是智能体执行任务的核心能力模块,它将大语言模型的推理能力转化为实际生产力。Skill包含指令定义、工作流、知识库、执行脚本等结构化组件,可复用且标准化。相比一次性Prompt或单一Tool,Skill能串联多个工具完成复杂任务。通过调用不同Skill,AI可自动查询数据、生成报告并发送邮件,实现从聊天机器人到智能助手的进化。当前趋势包括SkillSets共享和SkillStore生态化发展,Skill正成为AI从"思考"到"行动"的关键桥梁。
2026-03-02 16:39:12
783
原创 什么是 Prompt
摘要:Prompt(提示词)是与AI交互的核心指令,其质量直接影响输出效果。2026年,提示工程已成为关键技能,结构化提示包含指令、上下文、输入数据、输出指示和角色设定等要素。高级技巧包括零样本提示、少样本提示、思维链推理(CoT)、角色设定及检索增强生成(RAG)。最新趋势呈现自动化优化、多模态融合和结构化输出等特点。有效提示的关键在于明确目标、提供充分背景和引导AI推理。
2026-03-02 15:27:08
538
原创 Mac电脑外接便携显示器,点“停止镜像”后无法再找到此显示器
我的Mac笔记本遇到的问题是:连接一个便携小显示器,当点击状态栏上的镜像图标-停止镜像,就再也找不到这台小显示器了,大苹果客服电话,带着如下操作后重启电脑可正常,此操作不影响任何电脑设置。
2025-10-27 10:25:34
393
原创 Android App Startup 库使用说明文档,初始化不再用Application了...
App Startup 库提供了一种简单、高效的方式来初始化应用程序组件,可以优化应用启动时间。该库允许将多个初始化器合并到一个内容提供器中,避免创建多个内容提供器带来的性能开销。
2025-10-21 18:22:42
415
原创 pluginManagement 和 dependencyResolutionManagement 的区别和使用场景
Gradle中pluginManagement和dependencyResolutionManagement的区别与配置要点: 核心区别 pluginManagement:管理Gradle插件的仓库和版本(作用于plugins{}块) dependencyResolutionManagement:管理项目依赖的仓库和版本(作用于dependencies{}块) 典型配置场景 通常需要同时配置两者 pluginManagement在settings评估前执行 dependencyResolutionManag
2025-10-14 13:40:41
550
原创 处理Duplicate class a.a found in modules xx1-1.0 (xx.xx:mm1:1.0),... and xx2-1.0 (xx.xx:mm2:1.0)问题
ProGuard提供三个包名处理参数:-keeppackagenames保持指定包名不变,适用于反射访问的类;-repackageclasses将所有类移动到新包,完全隐藏原始结构;-flattenpackagehierarchy将包结构扁平化到新包下,保留部分原始信息。三者可配合使用,-repackageclasses适合完全隐藏,-flattenpackagehierarchy保留部分结构,-keeppackagenames保护关键包名,共同实现代码保护与体积优化。
2025-09-09 13:57:12
293
原创 proguard-rules.pro 和 consumer-rules.pro区别
是为当前项目(应用或库)定义的 ProGuard 规则,用于项目自身的构建过程。是为库项目的使用者(即依赖该库的应用项目)定义的 ProGuard 规则,确保库代码在应用项目中被正确处理。在实际开发中,库项目通常会同时使用这两种文件:proguard-rules.pro 用于保护库自身的代码,而 consumer-rules.pro 则用于指导应用项目如何处理库的代码。这样可以确保库在不同应用中都能正常工作,同时保持代码的安全性和性能。
2025-04-24 14:11:09
738
原创 Android解决ViewPager2内View不同高度问题
使用RecyclerView或NestedScrollView内部包含ViewPager2,并且ViewPager2的每页长度不同,在左右滑动Pager时,会出现页面只会以最长页面展示或者Pager某个页面被裁切的情况,下面的方法可以重新设置ViewPager2的高度。
2025-02-13 10:10:45
912
原创 【Android手机使用ADB命令修改默认桌面】
我的手机NIO Phone,在设置中是禁止更换默认桌面的,更换时会提示下图,即无法更换默认桌面,但是可以通过手机连接到电脑使用ADB命令修改成功。
2025-01-08 23:25:16
4815
1
原创 解决ViewPager2内嵌套其他滑动组件冲突问题的解决
比如开发时遇到的两层ViewPager2嵌套,内部ViewPager2无法滑动,可在内部的ViewPager2外套一层下方的NestedScrollableHost,这时可滑动内部的ViewPager2,并且滑到第一个或最后一个时,可直接带动外层ViewPager2继续滑动,可解决滑动冲突问题。这个是Google官方提供的解决。
2025-01-03 15:19:56
599
原创 通过实现LifecycleEventObserver接口,打印应用Application的生命周期
在Application中的生命周期打印。
2024-01-24 10:25:34
727
1
原创 OnEditorActionListener回调两次问题
需要增加event?.action == KeyEvent.ACTION_DOWN判断。在Android14手机上发现的问题,详见代码。
2024-01-17 17:46:06
705
原创 The application could not be installed: INSTALL_FAILED_TEST_ONLY问题解决
在gradle.properties中添加如下代码。仅针对我遇到的问题,解决方式仅供参考。
2024-01-16 10:40:17
925
1
原创 armeabi、armeabi-v7a、arm64-v8a、x86、x86_64简单介绍
x86_64: 这是针对 64 位的 Intel 或 AMD 处理器的执行环境。armeabi-v7a: 这是针对 ARMv7 和以上版本的处理器优化的执行环境。arm64-v8a: 这是针对 ARMv8 架构的 64 位处理器的执行环境。它提供了更好的性能和对大内存的支持,是现代 Android 设备常用的架构。x86: 这是针对使用 Intel 或 AMD 处理器的 Android 设备的执行环境。armeabi: 这是最早的 ARM 执行环境,适用于所有 ARM 基础的处理器。
2024-01-15 16:31:27
8476
原创 更新Android Studio提示:Studio dose not have write access to /Applications/Android Studio.app/Contents.
这个错误信息表明你的 Android Studio 没有足够的权限来修改/Applications/Android Studio.app/Contents 目录。这通常发生在 macOS 系统上,当你尝试更新或安装 Android Studio 插件时,可能会遇到这个问题。
2024-01-08 14:40:23
716
原创 在Fragment中Context相关的方法:getContext(),requireContext()和requireActivity()
在Fragment中,有几个与上下文(Context)相关的方法:getContext(),requireContext()和requireActivity(),它们的区别和用法。
2023-12-28 11:14:50
2341
1
原创 CollapsingToolbarLayout的app:layout_scrollFlags参数效果描述
app:layout_scrollFlags参数各种效果的文字描述。
2022-12-11 12:11:58
620
原创 安装NV显卡驱动重启黑屏,我电脑是闪烁显示:/dev/nvme0n1p2: clean, 2060841/62480384 files, 70604987/249919744 blocks
解决:按Ctrl+Alt+F3进入命令行模式(无法进入可以是下其他F1~F12键)。执行sudo apt-get purge nvidia*命令,然后reboot即可。
2020-07-31 14:33:49
4819
6
原创 Mac版Sublime Text3安装PrettyJSON离线格式化json字符串
Mac版Sublime Text3安装PrettyJSON离线格式化json字符串官网下载 Sublime Text Build 3103.dmg安装安装install package在线安装:点击菜单中的 “View”→“Show Console”(或快捷键 Ctrl + ` )把下面的代码粘贴进去后回车即可: import urllib.request,os,hashlib...
2018-03-15 14:09:20
10236
转载 欢迎使用CSDN-markdown编辑器
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
2015-04-17 10:12:01
549
关闭所有activity
2012-12-31
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅