什麼是多開APP呢?就是在一部手機跑二個一樣的APP啦。例如雙開遊戲、雙開Line。
本次Ivon要推薦的「Shelter」,乃是一款實用的APP,利用Android內建的機制,隔離工作用的APP資料,順便達到雙開APP的目的。
如下圖,你可以安裝二個一樣的APP,達到一支手機同時登入兩個帳號的目的。比如雙開Line,還有Google Chrome登入二個帳號,同步不同帳號的書籤。
影片操作演示
Shelter尚有保護隱私功效,內部的APP是看不到你的主要帳號資料的。當你用不到的時候,可以選擇「凍結」工作資料夾內的APP達到省電效果。因此有人說,Shelter很適合把某些流氓APP關在裡面,需要時再開就好,多方便!
還有還有,Shelter跟Google Play上其他多開APP不同的點在於,Shelter是完全開放原始碼的APP,這代表背後程式碼運作原理可受公評。並且Shelter APP不含任何廣告,沒有收費功能,亦不會蒐集使用者資料,您可以放心使用。
1. Shelter系統需求#
Shelter是否需要Root權限?沒有必要。
原理:Shelter背後使用的是Android內建的工作資料夾(Work Peofile)機制,建立二個使用者並用沙盒隔離資料。詳情請見 Android Work Profile說明
因此系統版本必須在Android 8以上,且系統越接近原生Android的越好。
比如Google、Sony、Nokia、Motorola、LineageOS這類的手機。
諸如Samsung、ASUS、小米、Oppo、Vivo、華為這種修改太多的Android系統可能會有相容性問題。
請注意,Shelter背後原理跟MIUI的多開功能不太一樣,Shelter也不是App Cloner,你最多只能雙開APP而已,三開、四開是不可能的。
此外,Shelter不是虛擬機,縱然Shelter可以隔離二個使用者的APP資料,但是APP照樣可以存取你的硬體裝置,從而得知你的裝置訊息。
還有,Shelter不支援密碼鎖,工作資料夾也不是真的隱形的,如果你需要這個功能請另外裝APP。
2. 建立工作資料夾#
Shelter由PeterCxy開發,採GPLv3授權釋出,你可以在 作者的Gitea儲存庫取得Shelter原始碼。
目前Shelter沒有在Play商店上架,請到 F-Droid下載APK。
安裝後根據指示建立工作資料夾
如果你使用的是原生Android桌面,應該就會在APP列表看到多出一個「工作」資料夾了。你可以看到Google Play服務已經自動複製過去,開啟登入Google帳號。
你可以在Shelter選單點選APP,將其複製過去。或是點右上角手動安裝APK。個人和工作設定檔二邊APP的版本必須一致。
開啟Shelter內部的檔案總管可以看到,工作資料夾內的APP是完全獨立的,有自己的儲存空間,跟個人的資料夾不互通。
此外,Shelter APP的設定有防止APP讀取通訊錄的功能。
工作設定檔裡面的APP開著的時候等同正常APP,是會耗電的。因此不用的時候請點選「凍結」讓他們休息。
3. 工作資料夾傳輸檔案#
設定檔案管理APP#
如果要讓個人與工作資料夾內的檔案互通的話,請點選Shelter右上方設定,開啟文件穿梭。
按照指示,在「個人」與「工作」頁面同意授予Shelter所有權限。
之後Android系統的檔案選擇器就會多出「Shelter」的選項。
你可以安裝 質感檔案APP,從左側滑出來,再點選新增儲存空間 → 外部儲存 → 加入Shelter,方便在二個使用者間傳輸檔案。
電腦傳檔問題#
MTP可能看不到工作資料夾的檔案,這時只能用ADB指令傳了。
- Android 14用這個指令列出所有用戶。
adb shell pm list users
假設工作設定檔回傳的數值為10,那麼使用者資料就是儲存在
/storage/emulated/10/
。參考 stackexchange答案,工作資料夾沒有Root權限無法讀取。如果沒有Root權限,傳檔會十分麻煩。
4. 如何移除Shelter工作資料夾#
Android系統設定 → 密碼與帳戶,可以刪除工作資料夾
接著再刪除Shelter APP即可。
5. 類似Shelter的開源APP#
類似Shelter的APP有「Island」和「Insular」,原理都是一樣的。
嘿,我知道你在想什麼,你覺得你可以同時用Shelter和Island達到三開APP的目的?Too young, too simple! 工作資料夾限定只能由一個APP管理啦,另一個開了舊有的資料就會不見。
Island由綠色守護作者開發,含有閉源軟體組件;Insular則是Insland的完全開源分支版。
Insular 開發者在 他們官網的FAQ列明了三者的比較。
從上表可以知道,Shelter跟Insular一樣沒有Googe核心服務組件,且只有Shelter可以阻止APP讀取通訊錄。但是Shelter沒有反ADB執行功能,安全性略遜一籌。
順便說,Island/Insular中文翻譯有點太中二了,把沙盒稱作「煉妖壺」什麼的…會這樣翻譯可能是因為中國手機太多流氓APP了,所以中國人才會說把這些妖魔鬼怪APP關起來的手段,叫做煉妖壺。
還有一點,工作資料夾沒辦法用來Degoogle,因為Play商店服務不可能透過此種方式安裝隔離。