DUDU-Meng You can look into Bluetooth tag and Bluetooth lyrics protocols, as well as FM hardware circuitry.
It has nothing to do with that or with audio channels. This is a completely Android to Android information propagation.
Some app does something and has the information and pushes it into the MediaSession api. It doesn't matter where this info comes from.
I could now write an app with input fields "write nonsense", "write more nonsense", "artist", "frequency", let the user type it in and then push "write nonsense" and "write more nonsense" into the MediaSession api so that the generic widget can show it as "title", "album", "artist", "frequency". And if the user types in another text, it will be propagated as well.
It doesn't matter where the info comes from. As long as it is received in the app, the app can push it further.
You could even use an Android spreadsheet app that pushes file name, worksheet name and cell content via the MediaSession api to "title", "artist", "album" (or whatever combination, although this would be completely useless).
Your FM app receives information (RDS info, frequency) from the FM-tuner chip through the MCU, but doesn't push anything into the MediaSession api.
NavRadio+ receives the same info (RDS info, frequency) from the FM-tuner chip through the MCU, but does push it into the MediaSession api, so it can be displayed in the generic widget.
You know everything about every setting and functionality of these units, but please discuss this underlaying Android functionality with your programmers.