После настройки приложения iDynamo я не могу подключиться к устройству
Итак, я загрузил файл моего проекта здесь: http://devswap.org/downloads/readerTest.zip
Я выполнил упражнение копирования / вставки из примера приложения для iOS, предоставленного MagTek, и теперь у меня есть практически идентичный код. (AppDelegate, ViewController и т. Д.) Мой кард-ридер будет подключаться к устройству с помощью примера приложения, но не моего пользовательского приложения.
Что я пробовал: я назначил правильный идентификатор протокола SDK, com.magtek.idynamo, как указано в Технической документации: http://www.magtek.com/docs/99875473.pdf (стр. 14).
Я знаю, что он аутентифицируется на моем iPad mini (iOS 7.1), потому что пример приложения работает, а класс EAAccessory регистрирует его подключение при запуске моего приложения. Однако я не могу подключиться к нему, используя класс MTSCRA от MagTek.
На данный момент я уверен, что это как-то связано с настройкой проекта, так как код практически идентичен. Разница лишь в том, что я использовал раскадровку, в то время как пример приложения использует один файл.xib.
Если кто-нибудь может взглянуть на файл проекта, размещенный на моем веб-сайте выше, и увидеть, что я делаю неправильно, любая помощь приветствуется.
1 ответ
Ваш код выглядит нормально, однако вы, похоже, не указали правильный ключ внешнего аксессуара в вашем Info.plist, как указано в этой записи в окне отладчика.
2014-06-17 01:27:50.111 readerTest[3075:60b] ERROR - opening session failed as protocol com.magtek.idynamo is not declared in Info.plist
У вас есть ключ в виде строки, и он должен быть массивом.
Щелкните правой кнопкой мыши на вашем списке, выберите открыть в качестве исходного кода.
Удалите существующую запись для com.magtek.idynamo.
Вставьте этот код в plist:
<key>UISupportedExternalAccessoryProtocols</key>
<array>
<string>com.magtek.idynamo</string>
</array>
Это решит вашу проблему, и программное обеспечение будет работать так, как должно.