Я верю в это, но не так, как вы, вероятно, надеетесь. Посмотрите на функции SetDevicePower, PowerPolicyNotify и SetPowerRequirement из CoreDLL.
Изменяя значение мощности для RIL (уровня радиоинтерфейса), вы можете «выключить» радиоприемник, но при этом поддерживать другие части системы на частичном уровне или на полной мощности.
Я на самом деле поступаю наоборот в нескольких своих программах ... Мне нужно, чтобы RIL оставался включенным (чтобы я мог управлять внутренними соединениями с сервером), даже если трубка хочет перейти в спящий режим (вам также необходимо используйте для этого функцию PowerPolicyNotify. Именно это делает Microsoft, что позволяет вашей трубке получать электронные письма, даже если устройство находится в спящем режиме - то же самое. Вы просто идете в другом направлении - вместо этого отключаете питание .