I have an AVRCP application where the controller (CT) is a car audio system and an iPhone is the target (TG). If the iPhone has multiple media players installed, should it be possible to get a list of them and select one?
Right now when I issue a GetFolderItems MediaPlayerList (PDU 0x71) command only one player is listed (whichever player was active last). I can successfully SetAddressedPlayer and SetBrowsedPlayer and the listed player will report and support it's listed features. If I select a different player from the phone (i.e. Pandora) then only that player is listed by the PDU 0x71 command.
Is it possible this functionality is restricted to iAP/MFi?
No, iOS doesn't allow you to switch between media players over AVRCP. You might be able to do something similar over iAP2, but even that is very limited (Apple generally wants these actions to be user-initiated).
Apple's Bluetooth Design Guidelines have some AVRCP advice, including: