如果數據保護程序啓用的,如果您的應用程序白名單檢查如果數據保護程序已啓用,並且您的應用程序未列入白名單,推送通知,當您的應用程序是將只提供通過ConnectivityManager.getRestrictBackgroundStatus()
public boolean checkBackgroundDataRestricted() {
ConnectivityManager connMgr = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
switch (connMgr.getRestrictBackgroundStatus()) {
case RESTRICT_BACKGROUND_STATUS_ENABLED:
// Background data usage and push notifications are blocked for this app
return true;
case RESTRICT_BACKGROUND_STATUS_WHITELISTED:
case RESTRICT_BACKGROUND_STATUS_DISABLED:
// Data Saver is disabled or the app is whitelisted
return false;
}
}
可能前景。
如果您應該限制數據使用量,無論您啓用還是禁用了Data Saver,或者您的應用程序已被列入白名單,您也可以檢查ConnectivityManager.isActiveNetworkMetered()
。
完整示例in the docs您還可以在其中學習如何請求白名單權限並監聽對「數據保護程序」首選項的更改。