Creo que esta pregunta debería publicarse en el sitio Reverse Engineering Stack Exchange . Está solicitando los detalles de implementación sobre un cuadro negro ...
De hecho cavaba un poco /System/Library/CoreServices/Menu Extras/AirPort.menu
y/System/Library/Frameworks/CoreWLAN.framework/
Hay un método privado de CWNetwork
llamado isPersonalHotspot
, tipo de:
char -[CWNetwork(Private) isPersonalHotspot](void * self, void * _cmd) {
eax = [*(self + 0x4) objectForKey:@"IOS_IE"];
eax = LOBYTE(eax != 0x0 ? 0x1 : 0x0) & 0xff;
return eax;
}
Parece solo verificar algunos identificadores. Creo SFRemoteHotspotDevice
y WiFiXPCEventProtocol
puedo tener más detalles de bajo nivel, pero no lo comprobé.
Por cierto, también hay una propiedad para identificar si es la red CarPlay
@interface CWNetwork : NSObject <NSCopying, NSSecureCoding>
... //redacted
@property(readonly) BOOL isPersonalHotspot;
@property(readonly) BOOL isCarPlayNetwork;
... //redacted
Apple controla el hardware, los controladores y el sistema operativo, supongo que pueden agregar fácilmente metadatos adicionales al transmitir la señal WiFi para que su Mac sepa si agregar el icono de la cadena o no.
Si alguien descubre exactamente cómo Apple hizo el truco, hágamelo saber. :)