AMCL 是面向 HarmonyOS NEXT 的第三方开源游戏管理器。我们恪守「最小必要」原则,坦诚说明会与不会处理哪些信息。
欢迎使用 AMCL,以下简称「本应用」或「AMCL」。
AMCL 是面向 HarmonyOS NEXT 的第三方开源游戏启动器,由独立开发者维护,全部代码与文档遵循开源协议(详见 GitHub 仓库)。本应用与 Mojang Studios、Microsoft Corporation、Xbox、网易公司、华为终端有限公司均无关联、无授权、无背书;相关游戏名称及商标归各自权利人所有。
我们深知个人信息对您的重要性,并恪守「最小必要」原则。本隐私政策旨在以清晰、坦诚的方式向您说明:AMCL 在您使用过程中会和不会处理哪些信息、为什么需要、如何保护、以及您拥有哪些权利。
本政策仅适用于您在 HarmonyOS NEXT 设备上安装并使用的 AMCL 应用本身(包名 com.amcl.launcher)。
本政策不适用于以下场景,相关数据处理由各自服务的隐私政策约束:
docker/ 目录)。我们郑重承诺,AMCL 客户端不收集、上传或共享以下任何信息至开发者控制的服务器:
AMCL 为完成启动器核心功能,会在您的设备本地处理以下信息。这些信息仅存储在您的设备上,不离开您的设备(除非该信息根据其本身性质必须被发往对应官方服务器,详见 §2.3)。
| 信息类别 | 内容 | 存储位置 | 用途 |
|---|---|---|---|
| 微软账户凭据 | OAuth 2.0 access token、refresh token、Mojang access token、Xbox UserHash、游戏玩家 UUID 与昵称 | 应用沙箱 filesDir,使用 HarmonyOS HUKS 加密保护(AES-GCM-256) | 实现微软正版登录与游戏内身份鉴权 |
| 第三方皮肤站凭据 | 您自行输入的皮肤站账号与密码、access/client token、apiRoot、角色列表(authlib-injector 外置登录) | 敏感字段经 HUKS 加密存于应用沙箱 filesDir | 实现第三方皮肤站登录与多角色切换 |
| 离线账户信息 | 您自行输入的玩家昵称(仅本地) | 应用沙箱 filesDir | 仅用于开发调试场景的离线启动 |
| 启动器配置 | 已安装的 MC 版本列表、JVM 参数、虚拟按键布局、镜像源选择、UI 偏好 | 应用沙箱 filesDir | 保留您的启动偏好,下次启动时自动恢复 |
| 游戏文件 | 游戏客户端 jar、资源、模组、存档、options.txt 等 | 应用沙箱 filesDir/.minecraft/(或您主动选择的公共下载目录) | 启动并运行 Java 版游戏本身的需要 |
| OpenJDK 运行时 | 从 GitHub Release 下载的 OpenJDK .so 库及配套数据 | 应用沙箱 filesDir/jdk/<version>/ | 提供 Java 字节码执行环境 |
| 运行日志 | mc_output.log、mc_error.log、AMCL 自身日志 | 应用沙箱 filesDir | 帮助您本地排查启动失败、崩溃等问题 |
说明:以上「应用沙箱」指 HarmonyOS 为本应用分配的私有目录,其它应用与第三方无法直接访问。卸载本应用时,HarmonyOS 系统会清理该目录。
为完成 Java 版游戏的启动与正版鉴权,AMCL 会直接与下列第三方官方服务器通信。这些通信不经过任何 AMCL 开发者控制的中间服务器。所传输的信息和用途如下:
| 第三方端点 | 域名 | 传输内容 | 触发场景 |
|---|---|---|---|
| Microsoft 身份平台 | login.microsoftonline.com、login.live.com | 您发起的 OAuth 2.0 授权码、PKCE code_verifier、客户端 ID | 您在 AMCL 内点击「微软账户登录」时 |
| Xbox Live 鉴权 | user.auth.xboxlive.com、xsts.auth.xboxlive.com | Microsoft 颁发的 access token、Xbox UserHash | 您在 AMCL 内完成微软登录后的鉴权链路 |
| Mojang 鉴权与 Profile | api.minecraftservices.com、sessionserver.mojang.com | XSTS token、Mojang access token、玩家 UUID | 完成正版登录、获取玩家档案、游戏内进入服务器时的鉴权 |
| Mojang 资源服务器 | launcher.mojang.com、launchermeta.mojang.com、piston-meta.mojang.com、piston-data.mojang.com、libraries.minecraft.net、resources.download.minecraft.net | 仅 HTTP 请求,包含您要下载的版本号、文件路径 | 您选择安装某个 MC 版本或其依赖时 |
| GitHub Release | github.com、objects.githubusercontent.com | 仅 HTTP 请求,包含资源 tag 与文件名 | 您首次启动选择某个 JDK 版本,或安装 LWJGL 资源时 |
| 第三方皮肤站(可选) | 由您填写的皮肤站地址(如 littleskin.cn 等) | 您填写的皮肤站账号、密码及鉴权 token | 仅当您主动添加第三方皮肤站账号时 |
| 模组资源站(可选) | Modrinth、CurseForge 及其镜像 | 仅 HTTP 请求,包含您搜索的模组名与要下载的文件路径 | 仅当您主动使用模组 / 整合包浏览下载功能时 |
| BMCLAPI 镜像(可选) | bmclapi2.bangbang93.com 等 | 仅 HTTP 请求,包含您要下载的 MC 资源路径 | 仅当您主动在设置中启用镜像源时 |
以上所有通信均通过 HTTPS(TLS 1.2 及以上)进行,使用本应用内置的、与 Mozilla CA bundle 同源的根证书集合(约 220 KB,随 HAP 一同打包),不会因任何原因关闭证书校验。
为防止下载源被篡改,AMCL 对从 GitHub Release 下载的 OpenJDK 资源包执行强制 SHA-256 校验。校验值随应用版本固化在源代码中。哈希不匹配时,文件会被自动删除并拒绝加载。
我们仅在以下范围内使用 §2.2 所列的本地数据:
我们不会:
AMCL 在 module.json5 中声明的系统权限完整列表如下:
| 权限名 | 授权方式 | 用途 | 不授予的影响 |
|---|---|---|---|
ohos.permission.INTERNET | 普通权限(无弹窗) | 与 §2.3 所列第三方官方服务器通信,下载 OpenJDK / MC 资源、完成正版登录 | 完全无法使用本应用 |
ohos.permission.VIBRATE | 普通权限(无弹窗) | 游戏内虚拟按键的轻触触觉反馈 | 仅失去按键震动反馈,不影响功能 |
ohos.permission.READ_WRITE_DOWNLOAD_DIRECTORY | 运行时弹窗授权 | 可选功能:将游戏数据 .minecraft 存到公共「下载」目录,使其卸载应用后仍保留(仅您在设置中主动开启时申请) | 不影响默认沙箱存储;不开启此功能即不申请 |
ohos.permission.kernel.ALLOW_WRITABLE_CODE_MEMORY | 受限权限 / 系统静默授予(无弹窗) | 内嵌的 OpenJDK 运行时(HotSpot JIT)需要可写可执行内存以提升 Java 执行效率 | 无此权限时 Java 仅能解释执行,游戏帧率显著下降甚至无法流畅运行 |
kernel.ALLOW_WRITABLE_CODE_MEMORY 受限权限仅平板 / 2in1 设备可用(华为不允许手机应用使用 JIT 可执行内存),因此 AMCL 经应用市场分发的版本仅面向平板 / 2in1 设备;手机用户请使用侧载渠道。该权限为系统静默授予(system_grant),不会向您弹窗,也不读取任何个人信息——它只影响内存的执行属性,与数据收集无关。
我们承诺不会在不告知您的前提下追加权限。任何后续版本若新增权限,会在本政策更新记录中明确披露。
MAP_XPM 对沙箱内可执行内存的代码签名约束)。该加载器仅加载经 SHA-256 校验的、由项目维护者在公开 Docker 容器中编译产出的 OpenJDK 二进制,不提供任意 URL 下载并执行代码的能力,不加载用户自带的 .so,不访问任何额外系统能力。上述 kernel.ALLOW_* 权限服务于同一目的(让 JIT 编译出的机器码可执行),其合规边界与工程约束详见项目源代码仓库中的相应安全文档。
AMCL 内嵌多个开源组件,它们运行在您的设备本地,不向任何远端服务器汇报数据。完整清单如下:
| 组件 | 用途 | 协议 | 上游 |
|---|---|---|---|
| OpenJDK HotSpot(8/17/21/25) | Java 运行时(含 AMCL 自维护 patch) | GPL-2.0 with Classpath Exception | openjdk |
| LWJGL 3 | OpenGL / OpenAL / GLFW 的 Java 绑定 | BSD-3-Clause | LWJGL/lwjgl3 |
| MobileGlues | OpenGL → OpenGL ES 翻译层 | LGPL-2.1 | MobileGlues |
| OpenAL Soft | 软件 3D 音频渲染 | LGPL-2.1 | kcat/openal-soft |
| libcurl | HTTPS 客户端 | curl license(MIT 派生) | curl/curl |
| JNA | Java native 桥接 | Apache-2.0 / LGPL-2.1 | java-native-access/jna |
| authlib-injector | 第三方皮肤站外置登录 Java Agent | AGPL-3.0(例外条款允许原样打包) | yushijinhun/authlib-injector |
以上组件均为成熟开源软件,源代码可公开审计。AMCL 未集成任何「统计 SDK」「广告 SDK」「推送 SDK」或类似具备数据采集能力的商业 SDK。
filesDir、cacheDir),位于您本人的设备本地;如您主动开启「沙箱外存储」,游戏数据会存入您选择的公共「下载」目录。依据《个人信息保护法》及相关法律法规,您对自己的个人信息拥有如下权利。AMCL 已在应用内或通过卸载机制为您提供相应能力:
| 您的权利 | 在 AMCL 中如何行使 |
|---|---|
| 知情权 | 阅读本政策;查看应用内的「关于」页面 |
| 查询权 | 您可在沙箱浏览器或 hdc 中查看 filesDir 下的全部本地数据 |
| 更正权 | 在 AMCL 设置中修改昵称、版本配置、镜像源等 |
| 删除权 | 在 AMCL 内「账号管理」中点击退出登录可清除本机凭据;卸载应用会触发 HarmonyOS 自动清理沙箱 |
| 撤回同意权 | 您可随时通过卸载本应用撤回对本政策的同意 |
| 可携带权 | filesDir/.minecraft 与配置文件均为标准格式,您可自行备份至其它设备 |
| 投诉权 | 通过本政策第十节的联系方式与我们沟通 |
AMCL 是一款面向 Java 版游戏玩家的工具应用,预期用户年龄分级为 8 岁及以上。
我们可能根据法律法规变化、本应用功能调整等原因更新本政策。重要更新会通过以下方式告知您:
每次更新均会在文档顶部「最近更新」字段标注日期。继续使用即视为您接受更新后的政策;如您不接受,请停止使用并卸载本应用。
历史版本可通过 GitHub 提交记录 查阅。
如您对本政策有任何疑问、意见或投诉,或希望行使第七节列出的任何权利,可通过以下渠道与我们联系:
我们将在收到您的请求后 15 个工作日 内做出回应。
本政策的解释、效力及与本政策有关的争议,适用 中华人民共和国 法律(不含港澳台地区法律)。如发生争议,您与我们应首先友好协商;协商不成的,任一方均可向开发者实际居住地有管辖权的人民法院提起诉讼。