После настройки приложения 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>

Это решит вашу проблему, и программное обеспечение будет работать так, как должно.

Другие вопросы по тегам