F-Droid 支援 APK 擴展檔案,又名 OBB

許多遊戲、地圖或其它應用程式需要大量的資料運行。Android的 APK 檔案大小不可超過 100MB,但通常一個國家的地圖檔就不只100MB。此外,為了讓使用者能快速執行,不必在首次啟用應用時要等上一段時間來下載大量的資料。

Google 創建了又名「APK 擴展」的 OBB 檔案,使傳送大量資料時更具彈性。這樣的安排也能節省頻寛,因為 APK 檔和 OBB 檔可以各自分開更新。例如,某個遊戲的資源不會經常變動,因此可以作成一個 OBB。當此應用更新時(即 APK),它無需包含存在 OBB 檔案的資源。

許多遊戲及 MAPS.ME 等的應用程式都使用 OBB 檔案。F-Droid 將在處理 APK 檔案前先下載和安裝 OBB,以使 OBB 檔案在安裝好 APK 時已經準備就緒,以供使用。F-Droid 更為提供 刻意 的方式,讓應用程式可以存取 OBB 的下載網址。此方式可以使應用程式獨立地處理 OBB 下載和更新,與 Google Play 的處理方法相近。

F-Droid 0.102 或更新版才支援 OBB,軟體倉庫必須使用 fdroidserver 0.7.0 或更新版。在倉庫新增 OBB 檔案非常簡單:您只需要將 OBB 檔案複製至 APK 檔案所在的資料夾(如: /path/to/fdroid/repo/)。

針對開發者的使用

在應用程式中使用 OBB 檔案時,要注意應用程式商店不一定會安裝 OBB 檔案。未能夠安裝 OBB 檔案的應用程式是可以啟動的,但不會找到所需的 OBB 檔案。這個情況下,該應用程式必須自行下載和安裝 OBB 檔案。Google Play 建議在下載和安裝 OBB 檔案時使用他們的專用應用程式許可 服務,但 F-Droid 則提供一個使用自由軟體的簡單方法。

要取得兩個可能的 OBB 檔的 URL 位置,使用 these Actions 來傳送 Intent 到 F-Droid:

  • org.fdroid.fdroid.action.GET_OBB_MAIN_URL
  • org.fdroid.fdroid.action.GET_OBB_PATCH_URL

利用習慣的方式開啟 URL 下載, 確保檔案會自動地存放於 Android/obb/<packageName> on 設備的外部儲存空間。