Search code examples
iphoneiosbluetoothgamekitvcf-vcard

Sending a contact from an iOS app via bluetooth


I am trying to allow a user, who is running my app, to send a contacts vcard (vcf) via bluetooth to another iOS device. The problem is, that the receiving device should not be required to run the same app.

Is there a possibiliy to accomplish this?

If there is not - is it at least possible to have Gamekit to establish a session, when the receiving device is running the same app, but without requiring the (receiving) user to start the peerPicker-dialog?

Any help and hints are appreciated!


Solution

  • First option: seems to be impossible.

    Second option: Works. I implemented a GKSessionDelegate for receiving incoming connections. This session is startet together with the app. For establishing the connection with a receiver, I used the well known GKPeerPickerControllerDelegate.

    One remainig problem is, that the sender sees itself in the list of available peers (because it has also a receiver running in the background). My solution for this is to set its GKSession.available=NO, as soon as the sender starts its GKPeerPickerController.