Un appareil iOS7 peut-il agir comme un iBeacon?

Est-ce qu'un appareil iOS7 peut agir comme un iBeacon et comprendre quand d'autres appareils iOS7 sont dans sa gamme? Est-ce que ces autres appareils iOS7 doivent avoir Bluetooth activé?

Un appareil iOS avec BluetoothLE peut agir comme un iBeacon oui.

Consultez l'exemple de code AirLocate à l' adresse https://developer.apple.com/downloads/index.action?name=WWDC%202013#

Être un iBeacon ne donne pas de commentaires sur les appareils qui entrent dans la gamme, donc vous auriez à le mettre en œuvre vous-même. Par exemple, vous devez avoir les périphériques qui détectent l'iBeacon, puis dire à l'iBeacon qu'ils l'ont vu par d'autres moyens.

Oui, un appareil iOS peut servir de balise, à partir de l'iPhone 4s (Bluetooth 4.0 requirejs).

Vous publiez une balise en transmettant le dictionary de [CLBeaconRegion peripheralDataWithMeasuredPower:] à [CBPeripheralManager startAdvertising:] .

La publication d'une balise ne vous donnera aucun return sur les appareils, vous devrez chercher d'autres personnes pour publier une balise.

En ce qui concerne l'arrière-plan, vous ne pouvez pas publier une balise en arrière-plan, votre application doit être exécutée en premier plan pour cela. La numérisation est possible en arrière-plan.

Oui, un appareil iOS7 peut agir comme un iBeacon. Vous pouvez faire exactement ce que vous suggérez si vous avez une application installée sur tous les téléphones, et vous écrivez également un service Web. Cela permettrait au téléphone A de voir les téléphones B et C lorsqu'ils se trouvent à proximité:

  1. Votre application sur le téléphone A agit comme un iBeacon annonçant sa présence.
  2. Les téléphones B et C voient cet iBeacon, réveillant votre application pour appeler votre service Web qui signale qu'ils voient tous les deux la transmission du téléphone A.
  3. Votre application sur le téléphone A interroge ce service Web, qui renvoie une list de téléphones qui voient le téléphone A. Dans cet exemple, la list comprend les téléphones B et C. Votre application met à jour son affichage avec cette list.

Tous les téléphones ont besoin de Bluetooth LE, l'ont allumé et ont installé votre application. Ils auraient également besoin d'une connectivité Internet pour appeler le service Web.

Si vous n'utilisez pas iBeacons, ce projet utilise Bluetooth LE pour partager une série d'identifiants entre téléphones proches – SimpleShare

Vous pouvez définir un ID pour l'user de chaque téléphone, les partager entre les téléphones via Bluetooth LE à l'aide du projet SimpleShare (même en mode arrière-plan), puis interroger un service Web pour en savoir plus sur l'user possédant cet ID.

Un point qui ne ressort pas clairement des réponses précédentes est que pour que l'édition fonctionne (par exemple dans le téléphone A de la réponse de David), l'application qui a commencé à publier doit être au premier plan.

De la documentation Apple:

Pendant que votre application est en arrière-plan, le nom local n'est pas publié et tous les UUID de service sont placés dans la zone de débordement.

Comme mentionné, un appareil iOS 7 peut agir comme un iBeacon, tant que la technologie Bluetooth LE.

Pour utiliser iBeacon, vous devez disposer d'iOS 7 ou version ultérieure, de Bluetooth activé et d'un appareil iOS compatible:

  • iPhone 4s ou plus tard
  • iPad (3e génération) ou plus tard
  • iPad mini ou plus tard
  • iPod touch (5e génération) ou plus tard.

http://support.apple.com/kb/HT6048