Does anyone know how well the android.telephony.ServiceState class methods work with various Android handsets? Specifically, I want to be able to setRoaming(), setStateOff(), or setStateOutOfService() to control when the phone actually "works" for the user. The intent is to have an app that can put the phone to sleep at times in order to send calls to voicemail or to another (call-forwarding) number that the use has defined.
So going to STATE_OUT_OF_SERVICE would allow "call forwarding on out-of-service" features of the cellular service provider to do their their thing.
I guess the question is: Do all handsets work when these methods, or are they optionally implemented (at a radio/hardware layer) with unpredictable results?