跳转到内容
返回首页
Feature

用你的安卓手机管理后端

从安卓手机上查看、部署、回滚并监控 33 项托管、数据库、后端、监控、代码、支付和消息服务。PocketCode 的后端管理器让这一切都在 IDE 里搞定。

3 min
作者 Pelayo Naredo
用你的安卓手机管理后端

生产环境挂了,而你正在公交车上。一次部署需要回滚,某个环境变量配错了,可你口袋里唯一能用的只有一部手机——不是那台同时开着 Vercel 控制台、Cloudflare 控制台和 Sentry 标签页的笔记本。通常的答案是「等你回家再说」。PocketCode 的后端管理器消除了这段等待:它是一块统一的面板,让你从手机上管理后端,直接对接各家服务商真实的 API,就住在 IDE 里、紧挨着你的编辑器和终端。更多内容见后端模块。

它不是一堆指向网页控制台的链接。它直接与服务商对话,把你的令牌保存在设备的加密存储中,并根据每家服务商 API 实际支持的能力来调整界面。PocketCode 不托管、不计费,也不代理其中任何服务:每次调用都从你的手机直接发往服务商的官方 API,使用的是你自己的账户。

8 个类别,33 项服务

后端管理器把所有围绕项目运转、却又活在代码之外的东西分成八个类别。它以三个标签页打开:状态(「现在有什么出问题了吗?」)、项目(所有已连接账户的全部项目汇总在一个列表里)和服务(已连接的服务,以及用来连接其余服务的目录)。

类别服务
托管(8)Vercel、Netlify、Render、Railway、Fly.io、Cloudflare、DigitalOcean、Expo EAS
数据库(7)Firebase、Supabase、Neon、PlanetScale、MongoDB Atlas、Turso、Upstash
后端(4)Appwrite、Convex、PocketBase、Clerk
监控(5)Sentry、PostHog、Axiom、Healthchecks.io、UptimeRobot
代码(3)GitHub、GitLab、Bitbucket
支付(2)Stripe、RevenueCat
消息(3)Resend、OneSignal、Twilio
媒体(1)Cloudinary

托管:逐个服务商的真实能力

每家托管服务商开放的 API 范围各不相同,后端管理器也不会假装它们一样。下面的矩阵列出了各家提供的能力(「是」表示可用,「部分」表示服务商的 API 只提供其中一部分,破折号表示服务商没有对应的 API)。

能力VercelNetlifyRenderRailwayFly.ioCloudflareDigitalOcean
部署与活动是是是是部分是是
构建日志是—是是—是部分
运行时日志是—是是—是部分
实时日志(Pro)是—是是—部分是
回滚(Pro)是是是是—是是
环境变量是是是是部分部分是
域名与 DNS是是—是是是是
指标部分—是是部分部分是
用量与费用部分部分—部分——是

几处「部分」的具体说明:Fly.io 没有部署历史(只显示进行中的发布及其机器),没有日志,也没有回滚;它的环境变量是 secrets(名称和摘要)。Cloudflare 的变量仅限 Pages,其实时流只包含 Pages Functions。DigitalOcean 的「App logs」只是最新版本的部署日志,其运行时日志只能通过实时日志获得。Netlify 没有发布 PocketCode 能读取的日志 API。Railway 的用量是没有金额的估算值。

Expo EAS 会通过 Expo 的内部 API(尽力而为)显示你的构建及其状态,只读。读取几乎都是免费的:实时日志和 PostHog 的功能开关列表属于 Pro。修改则不是免费的。写入环境变量、更改 DNS、添加自定义域名、暂停项目和扩缩容都是 Pro 操作,每一项都会说明将更改什么并要求你确认,手机支持时还会要求指纹或锁屏验证。回滚部署同样是 Pro,需要确认一次。

重新部署是更轻量的操作:确认一次即可,免费套餐每个项目一次只能有一个部署在进行。

深入一步:Cloudflare 与 DigitalOcean

有两家服务商的功能面远超基础的部署流程,因此后端管理器展示了更多内容。

  • Cloudflare:除 Pages 之外,还可以浏览 Workers 脚本、KV 命名空间、D1 数据库、R2 存储桶、DNS 区域和证书。
  • DigitalOcean:Droplet、托管数据库、卷以及可用性检查。DigitalOcean 的托管 PostgreSQL、MySQL 和 Redis 也可以直接在数据库模块中打开,无需手动填写表单。

数据库与后端服务

  • Supabase、Neon、PlanetScale、Turso、Upstash、MongoDB Atlas:在后端管理器中查看项目的用量与健康状况(MongoDB Atlas 甚至能显示真实账单)。数据表、SQL 控制台和安全工具都在数据库模块中;后端管理器通过「在数据库中打开」一行直接跳转过去。DigitalOcean 的托管 PostgreSQL、MySQL 和 Redis 也以同样方式从「托管数据库」打开。
  • Firebase:使用你自己的 Firebase 项目查看 Firestore 集合和文档,它们同样在数据库模块中打开。
  • Appwrite:用户、函数、执行记录和数据行。
  • Convex:查询、用量和限额。
  • PocketBase:集合与记录。
  • Clerk:用户与会话。

监控:它真的在正常工作吗?

  • Sentry:问题、无崩溃率、日志和定时任务。
  • PostHog:洞察、事件、功能开关(Pro,连读取也是)、录屏、实验和错误追踪。
  • Axiom:查询。
  • Healthchecks.io 与 UptimeRobot:检查,UptimeRobot 还带响应时间。

代码、支付和消息类别则补全了整幅图景:GitHub Actions 的运行与作业(可批准待处理的部署)、Stripe 余额与今日收款、RevenueCat 的 MRR、Resend 的送达与退信、OneSignal 通知、Twilio 余额与告警,以及 Cloudinary 额度。

Kubernetes 与一键部署:此版本中尚无法使用

「项目」标签页的 + 按钮列出了一键部署和 Kubernetes(用于生成 Deployment 和 Service 的本地 YAML 生成器),但两者打开的界面在此版本中都是空白的。在修复之前,从手机部署的办法是从编辑器部署,或对已有项目执行重新部署。

你的令牌始终锁在设备里

打开服务标签页,点按「连接」区块中的某个服务,然后粘贴密钥。GitHub 和 GitLab 会给你一个简短的代码,让你到它们的页面上输入;当你的构建包含对应配置时,Railway 和 Firebase 可以通过浏览器登录;其余服务使用令牌、密钥或一个简短的表单。应用会立即向服务商验证,失败时告诉你问题所在。服务商允许时,界面会要求使用只读密钥,其中十项服务还会列出需要勾选的最低权限;无法限制权限时(Netlify、Render、Supabase、Resend、Clerk、RevenueCat、Cloudinary、PocketBase 和 OneSignal 的密钥可访问整个账户),会在你粘贴前给出警告。

每个令牌都用 Android Keystore 加密,并且只会发往服务商自己的 API(PocketBase 和自托管的 Appwrite 则发往你填写的服务器)。你在这里连接的令牌从不会发往 PocketCode 的服务器。用 GitHub 登录 PocketCode 本身是另一回事:那个 GitHub 令牌会加密保存在 PocketCode 的后端,后端用它来列出你的仓库。

哪些免费,哪些是 Pro

读取并了解你的基础设施所需的几乎一切都是免费的:连接全部 33 项服务(每项一个账户)、状态、项目、构建与运行时日志、指标与用量、查看域名和 DNS,以及每个项目一次一个进行中的部署。例外是实时日志和 PostHog 的功能开关列表,它们属于 Pro。

Pro 用于修改内容、让手机替你盯着,以及附加功能:写入环境变量、更改 DNS、添加自定义域名、暂停与扩缩容、回滚、实时日志、PostHog 功能开关(读取以及调整放量比例)、带通知的后台检查和两个 Android 主屏幕后端小部件、每个服务商多个账户,以及 AI 摘要(例如构建为何失败)。后台检查按 Android 的调度运行,因此通知可能延迟最多 15 分钟:没有服务器在推送它。


管理后端过去意味着一张书桌、一台笔记本和一堆浏览器标签页。现在不必了。PocketCode 把托管、数据库、后端服务、监控、代码、支付和消息——33 项服务、真实的 API 调用、加密的令牌——放进了你编写和发布代码的同一个应用里,上面列出的缺口除外。

PocketCode 即将登陆 Google Play。加入预注册,成为最早用手机跑自己后端的人之一。

本文背后的工具

后端管理器

准备好试用 PocketCode 了吗?

下载应用,开始用手机编程。