In MyRadio app, when I listen to local FM channel the name of the song playing is displayed near the channel name. How do they do it? Does the broadcaster do some effort to display it?
The broadcast channel is surely using Radio Data System (RDS), also called Radio Broadcast Data System (RBDS) in the United States. It is now common practice (at least in my country) to transmit informations like Channel's name, programme's name or song's name with this system.
Your app simply receives and parses these data to display it, like a compatible radio set or car's radio would do.
One imagines they have built in something like Shazam; an app which fingerprints audio then looks it up in a database (http://news.cnet.com/8301-1023_3-57617885-93/more-countries-can-shazam-songs-and-listen-on-rdio). I doubt the broadcaster has anything to do with it.