La NDA MFI di Apple richiede che gli sviluppatori di accessori non divulgino alcuna informazione sui protocolli del dispositivo, chip di sicurezza, interfaccia, ecc.
Tuttavia, i produttori di dispositivi possono creare librerie e SDK che altri possono utilizzare per rilasciare app che utilizzano il proprio dispositivo.
Un esempio è Redpark, ad esempio ho alcuni dei loro cavi seriali:
link
Hai accesso a gran parte del dispositivo che consente tramite il loro SDK e puoi rilasciare app utilizzando tale SDK che funziona con il loro dispositivo. Puoi cercare nell'app store "redpark" e trovare molte app che usano i loro vari cavi iOS.
Quindi sì, è possibile - nulla nella NDA di Apple impedisce loro di rivelare e fornire la loro API ad altri. Semplicemente non possono rivelare il protocollo / API / interfaccia di Apple agli altri.
Si noti che Apple richiede a un'azienda di inviare campioni di dispositivi e casi d'uso per l'approvazione della MFI e sembra che non consentano a molti sviluppatori di sviluppare dispositivi per i quali intendono liberare gli SDK. Ci sono stati sforzi per creare accessori remoti universali a infrarossi, ad esempio che non sono stati aperti anche se gli sviluppatori originariamente intendevano fornire un SDK. Uno di questi discorsi ha indicato che Apple non approverebbe il proprio dispositivo a meno che non fosse legato a uno e a una sola app. Capisco in casi come redpark che gli sviluppatori hanno prima creato i cavi per clienti specifici e app specifiche, quindi hanno iniziato a creare cavi generici per app generiche dopo l'approvazione iniziale.
Quindi potrebbe esserci ancora una certa riluttanza da parte di Apple a consentire agli sviluppatori di progettare dispositivi API aperti.
Mentre la tua domanda riguarda gli accessori MFi, sono usciti diversi accessori di terze parti che non sono MFi. Molti usano il Wifi o il jack audio per comunicare con le loro app iOS, come link . Diversi lettori di carte di credito si inseriscono nel jack audio. Non tutti danno il loro SDK / API liberamente, ma puoi sempre chiedere.