Fase 2

Prototipo nativo iPhone

Swift y Xcode, solo frameworks oficiales. Las mismas capas que en Android, con implementaciones distintas y límites más estrictos.
PROTOTIPO WEB / ESPECIFICACIÓNNO DEMOSTRADO EN HARDWARE

iOS no expone ninguna API del Hotspot Personal y no garantiza un enlace directo a ese ajuste. Un ayudante iPhone siempre implica más fricción que un ayudante Android.

Capas del proyecto

CapaImplementación iOS
PeerDiscoveryMultipeerConnectivity entre iPhones; CoreBluetooth para hablar con Android
PeerTransportMCSession y características GATT
SecurityManagerCryptoKit: Curve25519, HKDF, AES-GCM, claves en Keychain
SessionManagerMáquina de estados y temporizador con reloj monotónico
NetworkConfigurationNEHotspotConfiguration para unirse; guía en pantalla para activar el hotspot
FairUseManagerReglas locales idénticas a Android
LocalEventStoreCore Data o SQLite con Data Protection
SyncManagerURLSession con reintentos e idempotencia

iPhone → iPhone, paso a paso

  • Anunciarse como disponible con la app en segundo plano es limitado: en la práctica el ayudante debería tener la app abierta o recién usada.
  • Descubrimiento, solicitud, aceptación, handshake y negociación funcionan bien en primer plano.
  • El ayudante activa el Hotspot Personal a mano en Ajustes.
  • El solicitante se une con NEHotspotConfiguration, con aviso del sistema.
  • Verificación de Internet real, sesión, fin y registro local.

Frameworks, entitlements y permisos

  • MultipeerConnectivity, CoreBluetooth, NetworkExtension, CryptoKit, Network
  • Entitlement de Hotspot Configuration para NEHotspotConfiguration
  • NSBluetoothAlwaysUsageDescription y NSLocalNetworkUsageDescription con textos claros
  • Modos de segundo plano de Bluetooth central y periférico, con sus límites conocidos

Riesgos específicos de iOS

  • Revisión de App Store estricta con NetworkExtension: hay que justificar el uso legítimo.
  • El anuncio BLE en segundo plano cambia de formato y reduce mucho el alcance de descubrimiento.
  • MultipeerConnectivity no interopera con Android: entre plataformas solo sirve BLE.
  • No hay forma oficial de saber si el operador permite el Hotspot Personal.
HIPÓTESIS TÉCNICA — REQUIERE VALIDACIÓN EN HARDWARE