安装本地应用
按来源环境和精确版本安装本地应用,支持工作区内及定向授权的私有分发。
本地应用安装在用户自己的电脑上,由百积木客户端管理。工作区通过已授权设备调用其能力。
应用的来源身份是 environmentKey + appId,安装时指定精确 SemVer 版本。
安装不会改变应用归属,也不会把设备绑定到应用作者的工作区。
安装前
- 安装并运行百积木客户端及内置
baijimuCLI。 - 在客户端完成设备授权,绑定实际使用应用的工作区。
- 确认应用支持本机操作系统、架构和宿主版本,阅读应用请求的权限。
- 确认已获得来源私有版本的读取权限,或该版本已通过市场公开发布。
CLI 的默认工作区与本地客户端绑定分别管理。安装使用客户端自身的授权连接,不能通过切换 CLI 默认工作区冒充另一个设备工作区。缺少来源环境身份时,应通过客户端重新完成设备授权。
安装精确版本
以下为示例,应用 ID、环境和版本以作者提供的信息为准:
baijimu workspace local-app install example-app \
--environment-key example-environment \
--version 1.0.0安装私有、未公开审核版本时,确认作者及权限后显式增加 --accept-unreviewed:
baijimu workspace local-app install example-app \
--environment-key example-environment \
--version 1.0.0 \
--accept-unreviewed这个选项只表示接受未公开审核的版本,不能绕过读取授权。 客户端通过来源服务下载冻结清单和其声明的制品,不向用户提供永久匿名私有包地址。 当前安装命令不接受本地目录、Git URL 或任意 ZIP URL作为未登记应用的安装入口。
安装完成后检查:
baijimu workspace device local-app get example-app --json应确认安装版本、生命周期和健康状态。微信类应用还需在本机登录微信,并按应用说明授予必要的 系统权限。健康检查成功不等于已验证真实消息发送。
定向私有分发
定向分发不进入公开市场。来源工作区管理员可把已经冻结的一个精确版本授权给同一环境内的另一工作区。 接收方使用自己的工作区凭据,无需加入来源工作区,无需使用作者的 token。
以下命令需要包含 local-app distribution 命令组的 CLI,以及已升级并完成数据库迁移的来源服务;
旧 CLI 不支持时先升级,不得改为手工写配置。
作者授予接收工作区安装权限(示例工作区 42 为来源,43 为接收方):
baijimu workspace local-app distribution grant example-app 1.0.0 \
--workspace-id 42 \
--recipient-workspace-id 43回查授权:
baijimu workspace local-app distribution list example-app 1.0.0 --workspace-id 42随后把上面的私有安装命令交给接收方。他在自己的电脑上完成客户端授权到 43 后执行即可。 授权只允许读取指定版本的安装清单和制品,不允许读取来源工作区其他资源、修改应用、发布或转授权。
撤销:
baijimu workspace local-app distribution revoke example-app 1.0.0 \
--workspace-id 42 \
--recipient-workspace-id 43撤销后拒绝新的清单读取和下载请求;已经获准的在途下载可能完成,已安装应用不会被远程卸载。 授权没有默认到期时间;重复授予和撤销保持幂等。新版本需要单独授权,不会自动开放后续版本。
常见问题
- 没有版本读取权限:确认设备授权工作区、来源身份、精确版本及该版本的有效授权。
- 来源环境身份不匹配:私有安装必须来自设备已授权的环境,不能只修改安装命令切换身份。
- 平台不支持:应用作者尚未提供对应操作系统或架构的制品。
- 安装成功但调用失败:分别检查进程健康、应用初始化、系统权限和工作区设备方法访问授权。