Как создать простую программу NFC с помощью java?
Я новичок, изучающий java и nfc. На самом деле мне действительно нужна помощь в моей домашней работе "Программирование NFC".
Я пробую этот учебник http://open-nfc.org/wp/editions/sdk-edition/creating-a-java-example/, и я до сих пор получаю эту сообщение об ошибке:
Start failed !
NfcException : Error while starting the NFC Manager - Caused by NFC error DRIVER
at org.opennfc.NfcManager.start(Unknown Source)
at org.opennfc.NfcManager.getInstance(Unknown Source)
at example.Example.main(Example.java:26)
Exception in thread "main" java.lang.IllegalStateException
at org.opennfc.NfcManager.stop(Unknown Source)
at example.Example.main(Example.java:36)
Собственно, то, что я хочу запустить, - это пример кода open-nfc
NfcManager mgt = NfcManager.getInstance(null);
try {
System.out.println(mgt.getProperty("open_nfc.version"));
System.out.println(mgt.getProperty("nfcc.firmware_version"));
} finally {
try {
mgt.stop();
} catch(NfcException e) {
System.out.println("Error :" + e.getMessage());
}
}
Я уже запустил центр соединений, симулятор nfc и портирование серверов. И у меня есть устройство QPROX QP3000, уже подключенное к моему компьютеру. Я использую eclipse juno и windows 7.
Ответы
Ответ 1
Вызов строки NfcManager.getInstance(null)
завершается с ошибкой.
Вы уверены, что для NfcManager.getInstance() требуется параметр null
pareameter?
После этого вызов mgt.stop()
снова завершается с помощью java.lang.IllegalStateException
, может быть, потому, что он не запускался.
Ответ 2
Я нашел замечательную статью здесь (http://code.tutsplus.com/tutorials/reading-nfc-tags-with-android--mobile-17278), благодаря чему я научился общаться и осуществлять платежи через чипы NFC.
Пройдите это, и я надеюсь, что это решит вашу проблему.
Ответ 3
В документации для NfcManager http://developer.android.com/reference/android/nfc/NfcManager.html упоминается вызов getSystemService (NFC_SERVICE) для создания NfcManager. Также ответ на предыдущий вопрос о переполнении стека Как проверить, включен ли NFC или нет в android?, приведен простой фрагмент кода кода. Надеюсь, это поможет.