使用ChromeOS优雅安装第三方APK
写在开头
然 ChromeOS 提供了一些官方的应用商店,但这些商店的应用数量有限,而且可能无法满足用户的所有需求。因此,许多用户希望能够在 ChromeOS 上安装第三方 APK。
本文将介绍一种使用 ChromeOS 开发者模式和 shizuku 来优雅安装第三方 APK 的方法。这种方法可以让用户在不破坏 ChromeOS 安全性(即不开启开发者模式)的前提下,安装任何第三方 APK。
本文的解决方案包括以下步骤:
- 启用 Linux 开发环境与 ADB 调试
- 安装 Shizuku 与第三方安装器
- 使用 Termux 自动化授权
启用 Linux 开发环境与 ADB 调试
由于本机的有线ADB调试模式仅可使用本机相关虚拟容器调用,同时 Linux 开发环境选项中也有我们必要的 ADB 调试选项,因此必须开启 Linux 开发环境。
Linux 开发环境的启用非常简单,具体可以参见我的上一篇文章:打造一台适合生产的Chromebook。
- 在 Chromebook 上,选择右下角的时间。
- 依次选择“设置”图标 > 高级 > 开发者。
- 在“Linux 开发环境”旁边,选择开启。
- 按照屏幕上的说明操作。整个设置过程可能需要花费 10 分钟或更长的时间。
- 系统会打开终端窗口。
至此,Linux 开发环境已经正常安装在了 ChromeOS 上,终端程序将会自动打开,类似这样:
安装 ADB 调试工具:
sudo apt install adb
安装后,输入adb
即可使用 adb 工具。
开启 ADB 调试:
在系统的设置 > 开发者 > Linux 开发环境 > 开发 Android 应用 选项中,开启 "启用 ADB 调试"选项。
连接到 Android 环境:
使用 adb devices
命令,连接到 Android 环境。此时,系统会弹出提示框,询问是否允许此计算机进行调试,选择一律允许即可。
现在,adb 列表中应该存在一个名为 'emulator-xxx' 的设备,并且状态为 'device'。
安装 Shizuku 与第三方安装器
Shizuku Github 项目地址:Github Release
通过使用 Shizuku,可以让我们直接使用系统API。
在 Shizuku 的 Github 项目地址中,下载最新的安装包。
下载完成后,将其拷贝至 'Linux 文件' 目录下,这样我们可以使用 Linux 的 ADB 工具安装。
在终端中,使用 install 命令直接安装该 apk 。应注意 apk 的目录是否正确,以及 adb 工具是否已经连接到本机 Android 环境。
adb install shizuku.apk
安装成功后,我们需要继续使用 ADB 工具对 Shizuku 进行授权:
adb shell sh /storage/emulated/0/Android/data/moe.shizuku.privileged.api/start.sh
授权后,打开 Shizuku,界面应该如下:
可以看到,现在 Shizuku 已经被授予了权限,显示 "Shizuku 正在运行"的结果。
现在,我们再通过 ADB 工具安装任意第三方安装器,并进行授权,即可完成通过 Android 自行安装任意第三方 APK。这里,我使用的是 InstallerX,也可以选择 R-安装组件等支持 Shizuku API 的第三方安装器。
InstallerX Github 地址:Github Release
类似上面的步骤安装即可。
打开 InstallerX,并进行 Shizuku 授权。
接着,打开"文件"应用,选中任意 APK,并点击上面的"打开"按钮,更改默认应用程序:
至此,我们就可以通过 Android 环境直接安装第三方APK了。
使用 Termux 自动化授权
由于 Shizuku 依赖于 ADB 授权,但每次重启后 Shizuku 都需要重新授权,这就导致每次开机都不得不启用 Linux 环境并执行指令进行授权,这不符合我们的理想需求,因此我们可以使用 Android 环境下的 Termux 进行自行授权。
安装 Termux:
虽然 Termux 可以通过 Google Play 获取,但 Google Play 版的 Termux 已经停止更新,官方推荐在 Github 或 F-Droid 进行下载。
Termux:F-Droid
Termux: Boot:F-Droid
将上述两个程序安装后,打开 Termux 。
安装 ADB 工具:
使用 apt 直接安装 android-tools。
apt install android-tools
安装后,可以使用 adb devices
来让 Android 对于该 Termux 中的 ADB 工具进行授权。
授权后,应和 Linux 环境一样显示 'emulator-xxx' 的设备,并且状态为 'device'。
设置启动自动授权:
在默认目录下,新建并进入目录:
mkdir -p .termux/boot
cd .termux/boot
使用编辑工具,新建一个自启动脚本:
vim auto-shizuku.sh
脚本内容如下:
adb devices
adb devices
adb shell sh /storage/emulated/0/Android/data/moe.shizuku.privileged.api/start.sh
编辑好脚本内容并保存后,下次开机 Termux 将自动运行,并进行 Shizuku 授权。
8 条评论
看到你的文章,我仿佛感受到了生活中的美好。 https://www.4006400989.com/qyvideo/1487.html
你的文章总是能给我带来欢乐,谢谢你!http://www.szyongchen.com
你的文章内容非常卖力,让人点赞。http://www.nmwutai.com
test
该方法适合Chrome OS Flex么?
Chrome OS Flex没有原生的Android子系统
请问一下,更改默认安装程序的时候,候选项没有installerx,该怎么解决呢
先使用Installer X打开一个安装包后再试