Google Play services is excluded because Google wants it so. It has to remained excluded from Doze or any power saving mode because apps depending upon Google Cloud Messaging (GCM) may fail to serve the user appropriately, hence, ruining the user's experience with Android big time. A GCM Android Client requires Play Store and Play services installed in Android device.
Anyhow, here's the brief reason: in the file /system/etc/sysconfig/google.xml
, other than the usage policy of the file it is noted:
<!-- These are configurations that must exist on all GMS devices. -->
<config>
<!-- These are the standard packages that are white-listed to always have internet
access while in power save mode, even if they aren't in the foreground. -->
<!-- GmsCore must always have network access for GCM and other things. -->
<allow-in-power-save package="com.google.android.gms" />
<!-- Play Store likewise must have network access to support other applications. -->
<allow-in-power-save-except-idle package="com.android.vending" />
where,
- com.google.android.gms : package name of Google Play services
- com.android.vending: package name of Google Play Store
I cannot precisely speak of what counts as other things. My educated guess is the APIs made available through Play Services. Refer to Table 1. here to see the list of those APIs.
Note: it is beyond the scope of this answer or the question itself why Google decided to keep Play Services and Store always excluded from power saving features of Android instead of finding and implementing a hybrid path.