Ich beschäftige mich mit externem Zubehör und MFI für ein Projekt und habe folgende Frage:
Welche Hardware-Attribute eines Drittanbieters können nach Anschluss eines iOS-Geräts an die MFI-Hardware erkannt werden? Insbesondere suche ich nach einem generischen Weg, um die Geräteklassen oder Fähigkeiten zu bestimmen, anstatt die spezifischen Hersteller- und Gerätenamen zu prüfen, ähnlich wie es Android tun kann (siehe unten). Ist das möglich?
Das Endziel: Schaltet einen Boolean um, wenn er mit einem Audio-Dock verbunden ist. Andere Ereignisse ignorieren Ich bin mir nicht sicher, wie granular iOS werden kann. Kann iOS den Unterschied zwischen einem Audiodock und einem Golf Putter App Cradle ? Gibt MFi Einblick in die Fähigkeiten eines Geräts?
Ich werde auf iOS 4.2 + abzielen.
Sie können anfordern, Benachrichtigungen von der Klasse EAAccessoryManager
zu erhalten (über die Methode registerForLocalNotifications
). Um dies zu tun, müssen Sie ExternalAccessory.framework
zu Ihrem Projekt hinzufügen.
Sobald eine Hardware hinzugefügt wurde, erhalten Sie eine Benachrichtigung mit EAAccessoryKey
, was wiederum verwendet werden kann, um eine EAAccessory
vom Zubehör-Manager zu erhalten
Das Zubehör verfügt über eine Reihe von Eigenschaften, mit denen Sie feststellen können, welche Art von Hardware angeschlossen wurde:
%Vor%Ich habe keine Ahnung, was Ihr Audio-Dock hier bietet, aber es sollte einfach einfach versuchen und hoffen, dass es für alle Geräte einheitlich ist :-)
Wenn Sie nicht an einem bestimmten Gerät, sondern an einer Klasse von Geräten (mit einem bestimmten Verhalten) interessiert sind, sollte protocolStrings
nützlich sein. Das Array besteht aus Strings, die Protokolle benennen (im Sinne von Verhalten, nicht im Sinne von ObjectiveC). Die Namen sind als Reverse-DNS-Zeichenfolgen (com.mycompany.myprotocol) formatiert.
Wenn Sie einen oder mehrere solcher Protokollnamen im Abschnitt UISupportedExternalAccessoryProtocols
(Typ: Array von Zeichenfolgen) der Info.plist
-Datei Ihrer App angeben, wird Ihre App gestartet, wenn ein ordnungsgemäßes Gerät angeschlossen ist.
Tags und Links ios mfi external-accessory