Android 自带虚拟机——工作资料入门指南
<img src="https://imgproxy.citrusreader.com/w6r9WUCcjlSBfthFCCvrbYsaQYrBcIXh0CF7zyZrhfU/raw:1/aHR0cHM6Ly9sb2NhbGZyZWVkb20ucGFnZXMuZGV2L2ltZy93b3JrLXByb2ZpbGUud2VicA" alt="Featured image of post Android 自带虚拟机——工作资料入门指南"><h2 id="简介">简介 </h2><p>Android Work Profile (工作资料)是Google在 Android 5 引入的隔离机制,用于将工作应用和数据与个人应用和数据分开,一方面与生活分开,另一方面企业IT管理员可以统一配置。</p> <p>Work Profile 的隔离性,可以发挥一个系统自带虚拟机的作用,将危险的App隔离其中,阻断个人数据泄漏。</p> <h3 id="隐私意义">隐私意义 </h3><p>手机不同于电脑,形态多样,贴近生活,意味着有更丰富的设备指纹,也关联更多个人信息。</p> <p>对于临时使用的App,重新安装并不确保能刷新用户资料,App通过共享设备指纹、公共数据空间缓存等方式可以实现新装应用和之前删除关系的关联。 虽然这对于误删或降级,有利于保持原有Profile,但是对于想无痕模式就很麻烦了。</p> <p>借助工作资料,可以将不登入账号的临时App装在工作资料这个类似虚拟机的环境中,很容易的清空有限隔离环境,阻断App运营者的追踪。</p> <p>当然,Work Profile 主要是隔离数据,对于设备指纹只能一定程度上破坏一致性。</p> <h2 id="机制">机制 </h2><ul> <li>同一时间只能配置一个 Work Profile,配置新工作环境需要删除旧环境。</li> <li>Work Profile 需要应用程序来配置启用,没有系统开关直接开启。</li> <li>启用 Work Profile 后会有按钮可以随时suspend,非常利于限制后台。</li> </ul> <h2 id="使用">使用 </h2><h3 id="选型">选型 </h3><p>一般的工作资料应用由企业运营,并不能做个人用途。</p> <p>开源的 Work Profile 应用有 Shelter, Insular 等。 这里推荐使用<a class="link" href="https://gitea.angry.im/PeterCxy/Shelter" target="_blank" rel="noopener" ><strong>Shelter</strong></a>,考虑到其在<a class="link" href="https://alternativeto.net/software/shelter-app/" target="_blank" rel="noopener" >AlternativeTo</a>上有更高评分,相比Insular有文件互通传送功能。 Insular作者有个<a class="link" href="https://secure-system.gitlab.io/Insular/faq.html" target="_blank" rel="noopener" >比较</a>。</p> <p>经测试在博主的几台设备上上Shelter均有更好的兼容性。</p> <h3 id="以lineageos为例">以LineageOS为例 </h3><ul> <li>⚠️操作前提醒 <ul> <li>创建或启停 WorkProfile 可能唤醒一些应用如Telegram,需做好网络限制并及时用雹等应用批量强停无关应用。</li> </ul> </li> <li>参考操作流程 <ol> <li>删除已有的 WorkProfile (新装跳过) <ul> <li>Settings设置 -> Passwords,passkeys&accounts密码、通行密钥和账号 -> Work工作 -> Remove work profile 移除工作资料</li> <li>原 WorkProfile 中应用图标如果主系统也有会留在原位转为主系统应用图标,需删掉,重开不会转换回去。</li> </ul> </li> <li>打开 Shelter 创建 WorkProfile。 <ul> <li>这里开发者会提示 Shelter 不是万能的,请自行处理兼容性问题。所以本文以最通用的开源系统LineageOS为例。</li> <li>一路下一步即可。</li> </ul> </li> <li>Shelter 右上角设置,开启文件穿梭功能。 <ul> <li>根据提示在 Work Profile 内外都赋予 Shelter 悬浮窗/档案管理权限。</li> <li>Work Profile 管理App除了这两个可选权限还有很多特权,所以选择可信赖的开源应用就非常重要了。</li> </ul> </li> <li>迁入浏览器 Fennec/Firefox 并设置。 <ul> <li>浏览器是非常必要的基础应用,而WorkProfile初始预设App并不包含。</li> <li>全面启用 HTTPS-Only</li> <li>DoH https://1.1.1.1/dns-query</li> <li>退出时删除浏览数据</li> </ul> </li> <li>迁入输入法 <ul> <li>如 fcixt5 小企鹅输入法</li> <li>桌面中间上划打开应用抽屉 -> Work工作 -> Settings设置 -> 系统 -> 键盘</li> </ul> </li> <li>迁入应用批量管理App如<code>雹Hail</code> <ul> <li>外部 <code>Shizuku</code> 给予 WorkProfile 中 <code>雹Hail</code> 权限以及时停止工作空间中闲置应用。</li> </ul> </li> <li>通过Shelter迁移必要的应用,并创建图标,复刻权限设置和流量管理。</li> <li>下载Apk安装需隔离的App。</li> </ol> </li> <li>收尾事项 <ul> <li>检查迁入应用是否创建桌面图标。</li> <li>检查 WorkProfile 中应用的流量设置。</li> <li>WorkProfile 中应用批量管理App如雹Hail的清单是否完整</li> </ul> </li> </ul> <h2 id="停用">停用 </h2><p>虽然 Work Profile 启用需要专门的App进行,但关闭以至弃用则是Android的系统功能。</p> <p>通常系统顶部下拉菜单中会有 Work Profile 的按钮,用于暂停/开启 Work Profile。</p> <p>一般在系统设置的账户设置中,会有个人和工作两个标签页,进入工作标签页可以找到删除 Work Profile 的选项。 删除后 Work Profile 中的内容就都没了。</p> <h2 id="展望">展望 </h2><p>按照Google的介绍,Work Profile管理App是能访问其中数据的,也许可以通过Work Profile机制实现底层数据导出。</p>