Доступ к NFC из JNI

Ответить
Lighter
Сообщения: 61
Зарегистрирован: 13 авг 2013, 16:39

Доступ к NFC из JNI

Сообщение Lighter » 03 янв 2014, 15:50

Привет!

Кто-нибудь знает, как можно из нативного кода (на C/C++) получить доступ к NFC?

Аватара пользователя
altwin
Сообщения: 1951
Зарегистрирован: 13 ноя 2013, 14:46

Re: Доступ к NFC из JNI

Сообщение altwin » 03 янв 2014, 15:55

посмотрите тут
Изображение

Lighter
Сообщения: 61
Зарегистрирован: 13 авг 2013, 16:39

Re: Доступ к NFC из JNI

Сообщение Lighter » 03 янв 2014, 16:32

Спасибо, но там нет ни одного вызова нативных методов.

Аватара пользователя
altwin
Сообщения: 1951
Зарегистрирован: 13 ноя 2013, 14:46

Re: Доступ к NFC из JNI

Сообщение altwin » 03 янв 2014, 16:39

Суть в том, что вам нужно создать класс, который имеет доступ к Android NFC API, и привести данные в нужный вид. Далее просто использовать их в своем С++ коде с помощью JNI.
Изображение

Lighter
Сообщения: 61
Зарегистрирован: 13 авг 2013, 16:39

Re: Доступ к NFC из JNI

Сообщение Lighter » 03 янв 2014, 17:07

Что вы имеете ввиду под "привести данные в нужный вид"? Я умею работать с NFC через Java, но сейчас есть необходимость работать с NFC через нативный код. Получить информацию из NFC через Java и передать её в JNI не подойдёт из-за некоторых ограничений, которые возникли. Сейчас в качестве альтернативы рассматриваю вопрос вызова Java метода из JNI.

Аватара пользователя
altwin
Сообщения: 1951
Зарегистрирован: 13 ноя 2013, 14:46

Re: Доступ к NFC из JNI

Сообщение altwin » 03 янв 2014, 17:24

Lighter писал(а):Что вы имеете ввиду под "привести данные в нужный вид"? Я умею работать с NFC через Java, но сейчас есть необходимость работать с NFC через нативный код. Получить информацию из NFC через Java и передать её в JNI не подойдёт из-за некоторых ограничений, которые возникли. Сейчас в качестве альтернативы рассматриваю вопрос вызова Java метода из JNI.
В нужный вид, в смысле в тот, который ожидает ваш метод в коде C++(имею я ввиду формат данных). Не совсем понятно чем отличается использование Android NFC API в java коде от вызова того же метода API через wrapper для C++, суть не меняется вы лишь добавляете дополнительный слой кода. Хотя никто не мешает использовать source напрямую. Не знаю доступны ли исходники Android NFC API, но похоже именно они вам и нужны, чтобы понять на что отзывается система и делать свою реализацию.

P.S. хотя тут уж я точно ничего не подскажу, кроме разве что ссылки на почитать ;) Хотя может можно как то собрать это все самому, но... в общем это выше моего желания попытаться понять :) http://open-nfc.org/wp/editions/android/
Изображение

Ответить