What is the PPID of Apple Devices?

Hi,

I have been struggling to get a Bluetooth Chat app trough the App Review.

The App uses Core Bluetooth as its main functionality and depends on Bluetooth working in the background, therefore I checked both the Uses Bluetooth LE accessories and the Acts as a Bluetooth LE accessory background modes.

When the app is launched it creates a CBCentralManager and a CBPeripheralManager, this is done receive and send messages to other users.

My app has been approved for public beta testing, but when I try to publish the app to the App Store it gets rejected as I need a PPID for the accessory which I am trying to connect to. The PPID is obtained trough the Apple MFi program, but that program is clearly meant for producers of hardware, which is also stated on the MFi webpage.

Now my question is, for my app to work with Bluetooth in the background, iPhone to iPhone, what is the PPID of Apple devices (iPhone in particular)? Or have I misunderstood something?

Answered by DTS Engineer in 698778022

Hi,

"PPID" is an identifier that's used with MFi accessories, and there are no PPIDs for Apple devices.

Does your app:

• Include the External Accessory framework?

• Have a 'UISupportedExternalAccessoryProtocols' key in its info.plist?

• Have 'external-accessory' in the UIBackgroundModes key in its info.plist?

If your app doesn't use the External Accessory framework to communicate with an MFi accessory then it should not include the External Accessory framework, nor include the 'UISupportedExternalAccessoryProtocols' key in its info.plist, nor indicate that it uses the 'external-accessory' service (aka External Accessory Framework) in the background.

In order for an app to use Core Bluetooth in the background its 'UIBackgroundModes' key should contain 'bluetooth-central' or 'bluetooth-peripheral'.

Accepted Answer

Hi,

"PPID" is an identifier that's used with MFi accessories, and there are no PPIDs for Apple devices.

Does your app:

• Include the External Accessory framework?

• Have a 'UISupportedExternalAccessoryProtocols' key in its info.plist?

• Have 'external-accessory' in the UIBackgroundModes key in its info.plist?

If your app doesn't use the External Accessory framework to communicate with an MFi accessory then it should not include the External Accessory framework, nor include the 'UISupportedExternalAccessoryProtocols' key in its info.plist, nor indicate that it uses the 'external-accessory' service (aka External Accessory Framework) in the background.

In order for an app to use Core Bluetooth in the background its 'UIBackgroundModes' key should contain 'bluetooth-central' or 'bluetooth-peripheral'.

What is the PPID of Apple Devices?
 
 
Q