數據節省模式

行動數據使用量很昂貴,而且在數據方案費用不親民的地方更是如此。Android 使用者需要能夠減少或完全封鎖應用程式使用數據。Android 7.0 版本中的數據節省模式功能可為使用者提供這項功能。

使用者可以開啟或關閉「數據節省模式」功能。應用程式開發人員應使用新 API 檢查是否已開啟「省用行動數據」模式。如果已開啟,應用程式開發人員可以調整應用程式,以便在資料存取量低或不存取資料的情況下妥善處理。

使用者可控制哪些應用程式可在背景存取資料,以及哪些應用程式只能在前景存取資料,這對使用者來說是一大福音。這樣一來,系統就能確保在使用者啟用數據節省模式時,能進行所需的背景資料交換。

實作

由於數據節省模式是平台的功能,因此裝置製造商預設會在 N 版本中獲得這項功能。請在以下位置尋找原始檔案:
packages/apps/Settings/src/com/android/settings/datausage

「設定」介面

Android 開放原始碼計畫 (AOSP) 提供預設的「Data Saver」設定使用者介面。請參考下方的螢幕截圖。

以下螢幕截圖顯示數據節省模式的使用情形。

開啟/關閉數據節省模式

圖 1. 開啟/關閉數據節省模式

省電模式和數據節省模式已開啟

圖 2. 省電模式和數據節省模式都開啟時

應用程式特定資料用量畫面

圖 3. 應用程式專屬的資料用量畫面:依序前往「設定」>「應用程式」>「資料用量」

快速設定中的數據節省模式

圖 4. 快速設定選單中的數據節省模式狀態

應用程式

重要事項:裝置導入者不應將應用程式列入許可清單。即使是這樣,使用者還是可以移除這些資訊。加入其他應用程式會迫使使用者決定要為哪些應用程式套用數據節省模式。

所有應用程式開發人員都必須採取行動,導入「Data Saver」功能,包括原始設備製造商 (OEM) 和預先載入應用程式的電信業者。如要瞭解如何偵測及監控數據節省模式狀態,請參閱 developer.android.com 上的數據節省模式,瞭解應用程式開發人員的操作說明。如需合作夥伴有用的其他詳細資訊,請參閱下列各節。

如要針對數據節省模式進行最佳化,應用程式應:

  • 移除不必要的圖片
  • 使用較低解析度的圖片
  • 使用位元率較低的影片
  • 觸發現有的「精簡版」體驗
  • 壓縮資料
  • 即使關閉數據節省模式,也要尊重計量付費和非計量付費網路狀態

相反地,應用程式應避免以下行為,才能與 Data Saver 搭配運作:

  • 自動播放影片
  • 預先擷取內容/附件
  • 下載更新 / 程式碼
  • 除非背景資料確實是核心功能的一部分,否則請要求加入許可清單
  • 將白名單視為可使用更多頻寬的授權

驗證

實作者可以執行下列 CTS 測試,確保功能的版本能正常運作:

com.android.cts.net.HostsideRestrictBackgroundNetworkTests

此外,您也可以使用 adb 指令手動執行測試,方法是先執行這項指令,查看所有可用選項:

adb shell cmd netpolicy

例如,這個指令會傳回白名單應用程式的 UID:

adb shell cmd netpolicy list restrict-background-whitelist