Skip to content

[Feature] 同步了上游的AndroidTV构建,允许用户自签名打包发包 #89

@SlotSun

Description

@SlotSun

非重复的Issue

  • 已确认没有相似的Issue

功能描述

  • 这个功能很久以前就在todo list里
    Android tv其实开发完成后为了稳定性其实不会上太多新功能,大多数更新是基于core包的
    为什么不发包也是因为在core包里有一个非常重要的js包在不同设备上表现不一致,非常难适配
    且flutter 3.27版本后不再支持tv x86模拟器调试 这是非常坑爹的决定
    现在在同步Android TV构建后,我稍作修改后适配了本仓库的Core包

  • 使用本仓库构建唯一的优势就是换芯 直播出现问题直接同步后打包构建不用再等了
    如果上游有什么关于Android tv的更新 我会同步

  • 现在 你如果有需要可以fork本仓库后手动自签名打包发包

  • 具体流程我帮你问了下AI

当然可以,我一步一步告诉你 GitHub Secrets 怎么填写,以及在 Android 构建时通常需要哪些 Secrets。


✅ 1. GitHub Secrets 在哪里设置?

  1. 打开你的 GitHub 仓库
  2. 点击 Settings
  3. 左侧找到 Secrets and variables → Actions
  4. 点击 New repository secret

每一个 secret 都是一个独立的 Key/Value 配置。


✅ 2. Android 构建一般需要的 Secrets

假设你使用的是 手动签名 keystore + GitHub Actions 自动打包 APK/AAB,通常需要填写以下 Secrets:


🟦 (1) KEYSTORE_BASE64

你的 keystore 文件 (.keystore 或 .jks) 需要转成 base64,再放到 Secrets 里。

▶ 如何转换?

在终端运行(Windows / Linux / macOS 都可):

base64 your_keystore_file.jks > keystore.txt

打开生成的 keystore.txt,复制里面的内容作为 KEYSTORE_BASE64 的值。


🟦 (2) KEYSTORE_PASSWORD

你的 keystore 密码。


🟦 (3) KEY_ALIAS

你的 key alias 名字。


🟦 (4) KEY_PASSWORD

你的 key alias 的密码(如果跟 keystore 密码一样也可以)。


🟦 (5) (可选)SIGNING_ENABLED

如果你的 yaml 想控制是否签名,可以设置:

SIGNING_ENABLED=true

没问题,我教你 完整生成 Android keystore 的流程,超简单,新手也能一次成功。


✅ 方法一:最常见方法(命令行生成 keystore)

无论你是 Windows / macOS / Linux,都可以用 keytool 生成 keystore
(keytool 是 JDK 自带的,你电脑装了 Java 就有)


🟦 1. 打开终端并执行:

keytool -genkeypair \
  -alias release \
  -keyalg RSA \
  -keysize 2048 \
  -validity 10000 \
  -keystore release.jks

平台

  • Android
  • iOS
  • MacOS
  • Windows
  • Linux

附加信息

No response

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions