Yes, they are easy to code. But they are meant for always-on systems and are no way the best way to code energy-efficient solutions. You will absolutely need to get down to the raw networking APIs to cut down on “blocking” time that sequential APIs enforce on you.
Having the flexibility to add reasonable time-outs to all your networking operations will significantly help reduce power consumption. Being able to measure time also lets you make intelligent decisions.
In a battery powered application, if sending one TCP packet with acknowledgement takes 3 seconds (when you know it should take 200ms), isn’t it a good idea to just shut down and try again later rather than have the socket API take forever to send the data out?