iOS External Accessory Framework из веб-приложения

Меня призывают создать веб-приложение, которое взаимодействует с аксессуаром для iphone. Я вижу, что нативные приложения используют ExternalAccessory.framework для доступа к аксессуару, но пока я не вижу признаков того, что эта структура каким-либо образом открыта для веб-приложений. Возможно ли это (и если да, то какова точка входа), или нам просто нужно построить натив?


person anthropomo    schedule 17.07.2013    source источник


Ответы (1)


Что вам, вероятно, придется сделать, так это использовать собственное приложение в качестве уровня связи между аксессуаром iOS и веб-сервером. Другими словами, вам придется перехватывать все ответы от веб-сервера и переводить их для аксессуара через собственный Objective-C. Если вы пишете собственное приложение с контроллером представления, который является UIWebViewController, и либо веб-сервер выпекает полезные данные команд в своих ответных сообщениях, либо изнурительно анализирует HTML для встроенных команд, вы можете осуществить это. Моя компания таким образом использует сторонние аксессуары, и хотя это некрасиво, но работает. Я имею в виду «не красиво» в том смысле, что ваши команды являются статическими для сборки вашего приложения и базовой обработки аксессуара. Удачи!

Быстрое РЕДАКТИРОВАНИЕ: в зависимости от того, насколько многоразовым вы хотите сделать взаимодействие с этим аксессуаром, вы всегда можете создать структуру с запеченными командами. Таким образом, когда вам нужно изменить или расширить схему управления/управления, все, что вам нужно сделать, это изменить фреймворк (да, для этого потребуется сборка). Это также позволит вам легко и быстро использовать один и тот же элемент управления в нескольких приложениях.

person Dan    schedule 22.07.2013
comment
Это более или менее то, к чему я пришел. Мы, вероятно, собираемся построить нативный, выполнить всю обработку на стороне устройства и отправить результаты через TCP, поскольку детали сервера находятся под нашим контролем. Хотите расширить возможности веб-сервера, запекая полезные данные команд? - person anthropomo; 22.07.2013
comment
Если мое приложение переходит на www.mysite.com/page2.aspx, веб-сервер может ответить чем-то (и это произвольный упрощенный пример), например doCommand=3&option=2.5. Затем в своем родном коде вы можете разбить ответ сервера и сказать, хорошо... Я вижу, теперь я должен включить этот светодиод (это doCommand 3) и заставить его мигать 5 раз (это вариант 2.5). На самом деле, как только вы начинаете открывать ящик Пандоры в соответствии с тем, что вы хотите делать со своим аксессуаром, вы буквально можете делать все, что хотите, НО компромисс заключается в том, чтобы изменять = строить. - person Dan; 22.07.2013
comment
Когда дело доходит до связи между нативным кодом и веб-представлением, мое единственное предложение — не пытаться создавать свой собственный с нуля. Многие люди делали подобные вещи раньше, и вы должны хотя бы посмотреть, как они это сделали, прежде чем изобретать велосипед. - person funroll; 04.12.2013