4

Simple question: I'd like to disable the A2DP profile for either (a) specific devices paired with the iPhone or (b) the profile entirely from the phone. How can I disabled the A2DP profiles? There used to be a program called Bluetooth Profile Selector for jailbroken iPhones. However, it stopped working after 4.3.1.

Here's the detailed scenario on why:
I have a stereo in my car that accepts a USB connector. This is how my iPhone is connected and plays music through. This way the audio quality is pristine, I can see the track information and control my iPhone from the headunit, and it charges my iPhone.

The headunit also pairs via Bluetooth for hands-free calling. However, because the iPhone supports A2DP, this is how it pairs to the headunit. I can do hands-free calling just fine, however it screws up the audio coming from the dock connector. Basically, the iPhone will begin playing music via the dock connector until it auto-pairs with the headunit. At this point, the iPhone automatically changes the output method to the Bluetooth connection. Manually changing this back over to the dock connector every single time is not something I wish to deal with.

1
  • I'll add to this request. I have a bluetooth stereo (sony mex-bt3800u) which is great for music and podcasts via bluetooth but hands free is frankly cack. I have a parrot ck3100 also and when I get a call it seems to connect to both devices and it seems like pot luck as to which one will answer it! Seems daft I can't decide which device has access to which service on my own phone!
    – user17988
    Jan 30, 2012 at 19:35

4 Answers 4

2

The app you are referring to has a manual process you can try, but it is not for the faint of heart: http://blog.ramondeklein.nl/?p=257

Howto disable A2DP on the iPhone

The interesting directory is /var/mobile/Library/Preferences, where the iPhone stores the BlueTooth settings. These settings are stored in the PLIST format, so you need a PLIST editor (Mac or PC) or you need to convert them by hand. Transfer the com.apple.MobileBluetooth.services.plist to your computer or you can use iFile to edit the file on your iPhone directly.

Open the com.apple.MobileBluetooth.services.plist in your PLIST editor and make sure you edit the A2DPService section and store the devices you don’t want to use A2DP in the UnauthorizeList (without the letter “d”). This dictionary will probably not exist yet, so you need to add it by hand. You need to know the MAC address, but it is probably listed already in this file.

<key>A2DPService</key>
<dict>
  <key>State</key>
  <true/>
  <key>UnauthorizeList</key>
  <dict>
    <key>00:10:60:D0:91:D0</key>        <!-- This is the MAC address -->
    <date>2009-08-08T01:00:00Z</date>   <!-- Timestamp -->
  </dict>
</dict>

Transfer the PLIST file back to your iPhone and reboot the device. Once it gets back on, then the A2DP service should be disabled.

2
  • Thanks for sharing this, however this "manual" process mimics the jailbroken app's behavior and does not work. I am messing with the Bluetooth PLIST's now, so hopefully I'll come up with something on that route. Apr 29, 2011 at 19:09
  • Alright, sorry I couldn't be of more help! Apr 29, 2011 at 20:28
2

Do you not just need to do this;

  1. Connect via bluettooth
  2. Go to the iPod app
  3. Click on the hidden button bottom right that only appears when you are connected to Bluetooth.
  4. Select the output device that isn't your handsfree destination, it seems to remember this choice on my setup(?)

That worked for me when I had the same problem

0

A new package was developed to disable A2DP and I can confirm it works.

http://www.if0rce.com/en/bluetooth-service-manager/

0

Another answer mentioning the Bluetooth service manager doesn't work in all cases. Specifically, it only disables A2DP and it doesn't disable it per device.

I use a parrot car kit and would rather use my blackberry Bluetooth dongle I have in the car, unfortunately that little button that appears doesn't remember settings for me, kind of a pain to switch it while driving, it seems to change back to the parrot after a call also.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .