logo
0
0
WeChat Login
cnb.aQG7oxXRgFA<user@cnb.cool>
Remove native Shell module, use pure JS tool execution

Claude Chat APK

一个自包含的 Android 聊天应用,直接调用智谱 AI 的 Anthropic 兼容 API,无需后端服务。

运作原理

┌──────────────┐ HTTPS ┌─────────────────────┐ │ Android APK │ ─────────────────► │ 智谱 AI API │ │ (React Native)│ Anthropic 兼容格式 │ open.bigmodel.cn │ │ │ ◄───────────────── │ │ │ 流式显示回复 │ SSE 流式响应 │ 模型: glm-5.1 等 │ └──────────────┘ └─────────────────────┘

架构说明

  • 前端: React Native (Expo SDK 54) 构建的 Android 聊天界面
  • API 通信: APK 直接发起 HTTPS 请求到智谱 AI 的 Anthropic 兼容接口
  • 流式输出: 通过 XHR + SSE (Server-Sent Events) 解析实现逐字显示
  • 无需后端: 不需要 Termux、Node.js 或任何中间服务

技术栈

组件技术
框架Expo SDK 54 + React Native 0.81.5
语言TypeScript
API 协议Anthropic Messages API (SSE 流式)
构建CNB Cloud Build (Docker + Gradle)
Android SDK34

核心文件

claude-chat-expo/ ├── App.tsx # 入口 ├── components/ │ ├── ChatScreen.tsx # 主界面 + 设置页 │ └── MessageBubble.tsx # 消息气泡组件 └── services/ └── ClaudeApi.ts # API 客户端 (XHR + SSE)

使用教程

1. 下载安装

从 CNB 构建产物下载 app-release.apk,安装到 Android 手机。

2. 配置 API

首次打开进入设置页面,填写:

字段说明示例
API Base URL智谱 AI 的 Anthropic 兼容端点https://open.bigmodel.cn/api/anthropic
API Key智谱 AI API 密钥xxxxxxxx.xxxxxxxx
Model模型名称glm-5.1

3. 开始聊天

点击「开始聊天」即可对话,回复会流式逐字显示。

4. 其他操作

  • 重置对话: 右上角「重置」清除上下文
  • 修改配置: 右上角「设置」回到配置页
  • 多轮对话: APP 自动维护对话历史

构建 APK

自动构建 (CNB)

.cnb.yml 定义了 CI 流水线:

setup-node → install-deps → expo-prebuild → build-apk → package-apk → upload-apk

推送代码后通过 API 触发:

curl -X POST \ -H "Authorization: Bearer $CNB_TOKEN" \ -H "Content-Type: application/json" \ "https://api.cnb.cool/{repo}/-/build/start" \ -d '{"branch":"main","event":"api_trigger"}'

构建完成后 APK 自动上传至 CNB commit 产物,可直接下载。

手动构建

cd claude-chat-expo npm install npx expo prebuild --platform android --clean cd android && chmod +x gradlew ./gradlew assembleRelease

APK 位置: claude-chat-expo/android/app/build/outputs/apk/release/app-release.apk

API 兼容说明

使用 Anthropic Messages API 格式:

  • 端点: POST {baseUrl}/v1/messages
  • 认证: x-api-key 请求头
  • 流式: stream: true,解析 SSE content_block_delta 事件
  • 任何实现 Anthropic API 格式的服务均可使用

About

Claude Chat Android App - 通过聊天界面与 Claude Code 实现对话

Language
JavaScript51.4%
TypeScript44%
Java4.6%