📈 GH Trending Explorer 🎲 Surprise me

← all repos

pengchujin / aerial-tv

git clone https://github.com/pengchujin/aerial-tv.git v1.14 · today

给国产电视的一块干净桌面:参照 tvOS 设计的开源 Android TV 桌面,没有广告,开机自动接管。A tvOS-style launcher for Xiaomi, TCL and other China-market TVs.

+509
stars, 24h · #26
+509
stars, 7 days · #119
+509
stars, 30 days · #552
509
★ total · +509% this week
35
forks · 39 open issues

Star history starts 2026-10-20; the chart appears after the second daily snapshot.

LanguageKotlin
LicenseMIT
Created2026-10-20 (today)
Last pushtoday
Watchers0
OwnerUser

Links

README excerpt
# Aerial
**给国产电视的一块干净桌面。**
参照 tvOS 设计的 Android TV 桌面:没有广告,没有推荐流,只有你的 App、你的壁纸和 Apple TV 航拍屏保。 
为小米、TCL 等国产电视而做,开机自动接管,待机也不会被清理。
**中文** · English
| 电视自带的桌面 | 换上 Aerial 之后 |
|:---:|:---:|
| | |
## 功能
### 首页
- **时钟**:大号细体时钟压在壁纸上,壁纸底部和左侧自动压暗。往下滚动时,时钟收进状态栏。
- **应用网格**:每行 5 个,聚焦时浮起并显示名字。默认加一圈白色描边,离得远也看得清;在「控制中心 → Aerial 设置」可以改回 tvOS 的原样。
- **图标**:有电视横幅就用横幅;方形图标用自己的底色铺满磁贴;自适应图标拆成两层做视差。
- **全部 App**:小米「应用中心」「高清播放器」「米家」这类没有标准入口的系统 App 也会显示。
- **信号源磁贴**:把 HDMI、AV、电视天线固定到首页,按一下直接切换(控制中心 → 信号源 → 显示在主屏幕)。
- **返回键**:和 tvOS 一样,在网格里按返回回到第一行,在第一行按返回开始屏保。
### 长按菜单
长按 OK 键:**移动**(其他磁贴自动让位)、**从主屏幕隐藏**、**应用信息**、**卸载**。
### 控制中心
按遥控器的菜单键(≡)打开,或在第一行按上键。包括信号源(显示 CEC 设备)、网络、设置,音量和亮度滑块,以及壁纸与屏保、隐藏的 App、Aerial 设置。网络和设置会打开电视自己的面板。
### 屏保
- **航拍**:114 段 Apple TV 航拍影片,从 Apple 的服务器直接播放,镜头移动时显示地名。左右键切换上一段 / 下一段。
- **照片**:每日精选和你的照片缓慢推移。
- **时钟**:每分钟换一个位置,防止烧屏。
在使用 Android 标准屏保的电视(比如 TCL)上,Aerial 就是系统屏保。小米用自家的屏保,Aerial 会在桌面空闲时抢先启动,挡在小米的广告屏保前面。
### 壁纸与手机设置
- **壁纸**:必应每日精选(国内直连)、8 组内置渐变,或者你自己的照片。
- **用手机设置**:扫描壁纸面板上的二维码,在手机上传照片、选壁纸、换屏保。页面只在面板打开时开放,地址带随机令牌。
## 安装
不需要 root,**不卸载、不停用任何系统应用**,一条命令就能还原。
### 第一步:打开电视的 ADB 调试
电脑和电视连同一个网络。先在电视上找到 IP 地址(一般在「设置 → 网络」或「关于」里),再打开 ADB:
| 电视 | 怎么打开 |
|---|---|
| **小米 / Redmi** | 设置 → 关于 → **产品型号**,连续按确认键,直到提示已进入开发者模式。再到 设置 → 账号与安全,打开 **ADB 调试** 和 **安装未知来源的应用** |
| **TCL / 雷鸟** | 设置 → 关于 → **本机信息**,依次按遥控器的 **上、下、左、右**(间隔不超过 1 秒),底部会出现「更多」,在里面打开 **ADB** |
| **原生 Android TV / Google TV**、海信等 | 设置 → 设备偏好设置 → 关于 → 连续按 **版本号** 7 次;再到 开发者选项 打开 **USB 调试**(也可能叫「网络调试」或「ADB 调试」) |
电脑第一次连接时,电视会问「允许 USB 调试吗?」,选 **允许** 并勾上「始终允许」。
### 用 Agent 安装(推荐)
把下面这段交给 Claude Code、Codex、Cursor 这类能在你电脑上运行命令的 Agent,把 ` ` 换成你的电视 IP:
 [code] 
### 一行命令(macOS / Linux)
 [code] 
脚本会下载最新版 APK 安装,授予只有 ADB 能给的权限(见下表),预编译让它更流畅,然后接管桌面和屏保、放行开机自启。
- `KEEP_ADB=1`:电视关掉 ADB 调试后(小米待机唤醒时会关),Aerial 立刻重新打开。不需要可以去掉。
- **固件拒绝安装桌面类 App**:在命令最后加 `-s guard`,改装不声明 HOME 的版本。
- **TCL**:TCL 拒绝一切 ADB 安装,脚本会改用电视自带的「多屏互动」推送,你在电视上选一次「同意」即可;没有多屏互动时退回用当贝市场。
还原成原来的桌面:
 [code] 
### 手动安装
到 Releases 下载 `aerial-standard.apk`(固件拒绝安装桌面类 App 时用 `aerial-guard.apk`),然后:
 [code] 
Aerial 启动后会自己打开桌面守护。屏保、亮度、TCL 自启等完整步骤见 tools/install.sh。
## 它怎么接管桌面,又怎么不被杀掉
国产电视大多只认自家桌面,待机时还会清理第三方 App。Aerial 先温和、后强硬:
1. **正常申请**:申请 HOME 角色、设为默认桌面。原生 Android TV 和 Google TV 到这一步就够了。
2. **桌面守护**:固件坚持用自家桌面时(小米、TCL 都是),由一个无障碍服务接管:官方桌面一到前台,就把 Aerial 拉回来。它只看哪个窗口到了前台,不读屏幕内容。
3. **被杀后复活**:小米待机会强制停止所有第三方 App。Aerial 注册了一个通知监听(不读任何通知),系统会在约 0.5 秒内重新绑定它,Aerial 借此复活,并用 `WRITE_SECURE_SETTINGS` 重新打开守护。
4. **开机自启**:开机时系统绑定通知监听,Aerial 随之启动。TCL 的「自启动管理」默认拦截第三方 App,安装脚本会用 `appops` 放行。
5. **ADB 常开**(可选):小米唤醒后会关掉 ADB 调试,开了 `KEEP_ADB` 后 Aerial 会马上打开它,方便以后升级。
### ADB 授予的权限
| 权限 | 用途 |
|---|---|
| `WRITE_SECURE_SETTINGS` | 重新打开被系统关掉的守护;保持 Aerial 为系统屏保;`KEEP_ADB`;写入小米的背光值 |
| 通知监听 | 被强制停止或开机后由系统拉起,不读取任何通知 |
| 悬浮窗(`SYSTEM_ALERT_WINDOW`) | 开机后从后台打开 Aerial |
| 修改系统设置 | 用标准接口调节亮度 |
| 定位 | 只用来读取 Wi-Fi 名称 |
| TCL `APP_AUTO_START` / `APP_ASSOC_START` | 允许开机自启(只有 TCL 有) |
## 已验证的电视
| 机型 | 系统 | 状态 | 笔记 |
|---|---|---|---|
| 小米 MiTV-MFTR0 | Android 14 / HyperOS TV | 日常使用中 |