docs: boolean meetsRequirements(boolean checkRequirementsEnforced) {
          if (checkRequirementsEnforced && !getParams().getRequest().requirementsEnforced()) {
              return true;
          }
  
          if (!isRequirementChargingMet()) {
              CAT.w("Job requires charging, reschedule");
              return false;
          }
          if (!isRequirementDeviceIdleMet()) {
              CAT.w("Job requires device to be idle, reschedule");
              return false;
          }
          if (!isRequirementNetworkTypeMet()) {
              CAT.w("Job requires network to be %s, but was %s", getParams().getRequest().requiredNetworkType(),
                      Device.getNetworkType(getContext()));
              return false;
          }
          if (!isRequirementBatteryNotLowMet()) {
              CAT.w("Job requires battery not be low, reschedule");
              return false;
          }
  
          if (!isRequirementStorageNotLowMet()) {
              CAT.w("Job requires storage not be low, reschedule");
              return false;
          }
  
          return true;
      }