2012-05-01 5 views
3

Я хотел бы передать через LLCP пользовательские данные в сообщении NDEF в одной записи NDEF (или, возможно, полезная нагрузка будет разбита на несколько записей NDEF). Транспортируемый контент - это файл с определенным форматом, который имеет значение только в конкретном приложении. Итак, каков наилучший подход для указания заголовка NDEF?Пользовательский (NFC) формат NDEF

1) Установите TNF в 0x04 (внешний тип форума NFC), 0x03 (абсолютный URI) или 0x05 (неизвестно)? 0x04 будет иметь пользовательский относительный URI поля TYPE и в случае абсолютного URI 0x03. 0x05 Мне не нравится много, так как принимающее устройство не может идентифицировать приложение для обработки данных, потому что TYPE должен быть пустым в этом случае (здесь может помочь только поле ID).

2) Поле идентификатора предназначено для уникальности сообщения NDEF, поэтому оно может быть либо пустым, либо содержать пользовательский идентификатор в форме, например. com.company.nfc.application_name&id=message_generated_uuid

Мое мнение - использование TNF 0x03 или 0x04 является предпочтительным способом, оставив идентификатор пустым, если сообщениям не потребуется дополнительная идентификация, которая будет лучше переносить за пределы полезной нагрузки.

BR Sten

ответ

3

Если ваше приложение будет работать и с Android 2.3 Gingerbread и потенциально других платформ, я рекомендовал бы использовать свой собственный определенный тип MIME (поле TNF установлен 0х02).

Android 2.3 не поддерживает внешний тип, поэтому я бы не рекомендовал это. Использование Неизвестного типа не поможет определить полезную нагрузку и/или приложение, которое будет использоваться. Абсолютный тип URI обрабатывается Android так же, как и широко известный тип URI RTD «U», что может потенциально вызвать путаницу. Мне неизвестна какая-либо платформа, которая будет использовать поле ID для идентификации приложения, которое будет использоваться.

Вы также можете добавить Android Application Record в конце вашего сообщения, содержащего имя пакета вашего приложения. В Android 4 ICS это придаст приоритет вашему приложению по любому другому потенциальному совпадению на основе типа сообщения NDEF.

+0

Привет, имеет ли смысл поддерживать совместимость 2.3 для NFC? Единственный телефон Google Nexus S можно обновить до ICS ... Итак, если это должно быть общее решение, не ограниченное Android (но используемое для Symbian и iCarte 420), несовместимое с Gingerbread, что бы вы порекомендовали? Внешний вид NFC Forum? – STeN

+0

Sony Xperia по-прежнему 2,3, так что Nexus S не единственный. Если вы не заботитесь о Gingerbread, самым логичным выбором будет внешний тип, как вы предлагаете. Внешний тип был точно разработан для этой цели. –

Смежные вопросы