2012-02-26 8 views
7

właśnie teraz mam tablet mający OS Android 2.3.3 zamiast NFC telefon, więc trzeba podłączyć zewnętrzny czytnik kart do tablet.Please mi powiedzieć, która karta czytelnik powinien wolę i dowolny sterownik potrzebny do podłączenia czytnika kart do tabletu. Wbudowane biblioteki NFC obsługują ten czytnik, czy nie? z góry dzięki.Jak podłączyć zewnętrzny czytnik kart NFC do Tablet

Odpowiedz

9

znalazłem odpowiedzi, ACS zapewnia teraz android bibliotekę oraz przykładową aplikację dla ich readers.You może znaleźć biblioteki here i niektóre informacje i video demo android obsługiwane czytelników jest here.

Jedynym problemem jest to, że biblioteka Android ACS obsługuje tylko system Android 3.1 i nowsze wersje. mam nadzieję, że ci to pomoże.

Jeśli nadal masz pytanie czuje swobodnie pytać ..

7

The-we wbudowanej biblioteki NFC w Androidzie 2.3 i 4.0 obsługuje tylko chip NFC PN544 przez NXP Semiconductors. Nie sądzę, że na rynku są dostępne czytniki kart, które go używają, ponieważ chip ten został specjalnie zaprojektowany do użytku w urządzeniach mobilnych. Możesz jednak znaleźć alternatywne implementacje interfejsu API Android NFC obsługującego inne układy NFC.

Innym problemem może być to, że tablet najprawdopodobniej nie ma wymaganych NFC biblioteki zainstalowane, w tym wymaganej usługi systemowej (NfcManager). W końcu twój tablet nie obsługuje NFC, więc nie potrzebuje tych składników oprogramowania. Dlatego należy utworzyć nowy obraz systemu ROM dla twojego tabletu, który zawiera te składniki oprogramowania.

Biorąc jedną z wielu czytelników wspólny stacjonarnych prawdopodobnie nie jest naprawdę możliwe. Stworzenie całego niezbędnego oprogramowania do integracji z Androidem nie jest tak naprawdę banalnym zadaniem. Łatwiej będzie po prostu kupić telefon z Androidem za pomocą NFC lub poczekać, aż pojawi się tablet z Androidem z funkcją NFC.

+0

dzięki za tak wyczerpującą odpowiedź, mam czytnik NFC ACR122U. Czy jest możliwe połączenie lub interakcja z tym czytnikiem? czy są na to jakieś sterowniki lub SDK? –

+0

Proszę spojrzeć na http://www.grundid.de/nfc/ i sprawdzić, czy jest to przydatne. –

+0

Widziałem, że link.there nie ma informacji związanych z podłączeniem czytnika NFC do tabletu. Pokazuje, jak interakcji lub podłączyć telefon NFC na PC.Ale jedno rozumiem, możemy odczytać lub zapisać dane w chipie telefonu NFC.so dzięki jeszcze raz. –

0

Czy Ten film odpowiedzi na swój problem: http://www.youtube.com/watch?v=6Xe7Ux0cTuI "Low cost, prosty, bez kierowcy - EM4100 lub czytnik RFID Mifare dla iPada, Androida i Windows"

PS: I nie działa i do tego COMPAGNY nigdy nie próbuj ich rozwiązania.

2

Ani Froyo (wersja min SDK wspiera NFC) 2,3 lub lody Sandwich 4,0 są kompatybilne z wieloma różnymi żetonów.

Kiedy producent wprowadza nowy telefon z innym chipem NFC, to dlatego, że ktoś stworzył sterowniki do używania takich układów i interfejsu z klasami NFC Androida, w szczególności klasą NfcManager i klasą NfcAdapter, która reprezentuje lokalny adapter NFC.

Najlepszy scenariusz: możesz użyć Android NDK, aby utworzyć niskopoziomowe klasy C/C++, aby jakoś komunikować się z zewnętrznym czytnikiem kart NFC z Androidem, a następnie tworzyć więcej niestandardowych programów za pomocą NDK, aby NfcAdapter w SDK mógł wykryć to ... i nie ma żadnych gwarancji, że ci się uda.

I ... jeśli myślisz o przejściu na http://www.alibaba.com i zaimportowaniu tabletu z czytnikiem NFC, zastanów się dwa razy, ponieważ te mogą nie pozwolić ci na wszystko, co układ NXP Semiconductors robi z Androidem Beam (TM) jako Odczyt/Zapis i obsługa różnych operacji we/wy za pomocą NFC-A, B, F, V lub ISO-DEP.

Przez wzgląd na swój czas (oraz dlatego, że czas jest najcenniejszym atutem dla każdego, kto w tych dniach). Myślę, że najlepszą opcją jest zdobycie kilku telefonów NFC, takich jak Galaxy Nexus S, DROID Razr, Xperia S, HTC Incredible, itp ... to będzie działać od razu po wyjęciu z pudełka, to właśnie robimy.

2

Hej sachin, Ponieważ twoje urządzenie nie ma NFC, nie będzie ono posiadało radia NFC i dlatego nie będzie mogło połączyć się (odczytać lub zapisać) z kartą NFC. Zgodnie z biblioteką NFC, jeśli kiedykolwiek spróbujesz pobrać NFCAdapter, zawsze zwróci wartość null. , więc musisz mieć przynajmniej jedno urządzenie z Androidem obsługujące technologię nfc dla dowolnego eksperymentu.

W moim projekcie użyliśmy czytnika kart inteligentnych ACR122, który połączy się z komputerem PC, a nie urządzeniem Android. Ten czytnik jest używany do odczytywania dowolnego tagu nfc.Urządzenie Android z obsługą nfc będzie działało jako tag nfc w trybie emulacji karty.

Następna część pytania "Wbudowane biblioteki NFC obsługują tego czytnika, czy nie".

, dzięki czemu ten czytnik kart odczyta wartość karty.

0

jest to dobry temat. Przypominam obawy koncernu RacZo dotyczące obsługi bibliotek NFC w tabletach Alibaba. Ponieważ chipsety NFC na urządzeniach różnią się, a niektóre mają wątpliwą lub nieobsługiwaną obsługę niektórych operacji, musisz być ostrożny i przetestować swoją aplikację wcześniej.

Czytnik ACS może być opłacalnym rozwiązaniem, a istnieją też dojrzałe i dobrze obsługiwane biblioteki i pakiety SDK, które wspierają integrację z systemem Android. Wadą zewnętrznego czytnika ACS jest czas pracy na baterii. Ponieważ monopolizuje on port USB, a tablety z Androidem nie pozwalają na ładowanie przez port USB, gdy podłączone jest do niego urządzenie peryferyjne. Jeśli więc twoja aplikacja jest czymś w rodzaju kiosku lub aplikacji samoobsługowej, może to stanowić problem.

Istnieje dobry wpis here dotyczący różnych opcji w obliczu tego wyzwania. Nie wiedząc więcej o aplikacji, trudno ją polecić w ten czy inny sposób.

0

Trochę za późno, żeby tu odpowiedzieć, ale faktycznie próbowałem zaimplementować zewnętrzny czytnik NFC tak blisko natywnego NFC, jak to tylko możliwe.

Możliwe jest dodanie dodatkowej usługi, ale zwykła inicjalizacja NFC (NfcAdapter itp.) Nie będzie świadoma tej usługi, więc będzie musiała być dodatkowo zainicjowana.

W wyniku tego nie było technicznie możliwe zastąpienie lub dodanie wbudowanej usługi NFC na zapasowej pamięci ROM - w sposób "zastępujący".

Ponowne użycie rodzimych klas NFC, takich jak Tag i IsoDep, jest możliwe.

Jednak jako programista aplikacji NFC, naprawdę nie chcesz tej samej funkcjonalności z usługi zewnętrznej, co wbudowane. Czytnik zewnętrzny prawdopodobnie ma więcej funkcji i na minimalnym poziomie chcesz wiedzieć, czy czytnik jest podłączony czy nie.

Aby uzyskać dodatkowe informacje, patrz External NFC API (uwaga: produkt nie jest w pełni otwarty).

1

z czytnikiem ACS NFC jest to możliwe:

Here można znaleźć w dokumentacji biblioteki i przykładowy kod. Jednak wydaje się, że nie ma opcji zapisu danych. Jeśli chcesz pisać do czytnika NFC, użyj funkcji transmisji do wysłania tablic bajtowych.

private static final byte READ = (byte) 0x30; 
private static final byte WRITE = (byte) 0xA2; 

Te bajty są domyślnymi bajtami odczytu i zapisu dla funkcji nadawania.Pełną dokumentację protokół domyślny NFC można znaleźć here

przykład:

byte[] response = new byte[300]; 
     int responseLength; 
     try { 
      responseLength = mReader.transmit(slotNum, command, command.length, response, response.length); 
     } catch (ReaderException e) { 
      e.printStackTrace(); 
      return "executeCommand: error: " + e.getMessage(); 
     } 

Slotnum jest liczba czytelnika, którego chcesz użyć. Jeśli mam rację, to zawsze jest 0, jeśli używasz jednego czytnika/usbdevice.

przykład polecenie:

new byte[] command {(byte) WRITE, 0x04, 0x06, 0x0a, 0x00, 0x21} 

drugi bajt jest strona Adres do zapisu. Strona 4 - 15 jest zapisywalna (strona 0 i 1 to id, strona 2 to lockbytes, a strona 3 to OTP, wszystkie z nich są TYLKO READ).

Funkcja Czytaj działa tak samo jak funkcja pisać tylko wysłać 3 razy 0x00 w tablicy na prawidłowych ustawień Odczyt:

new byte[] command {(byte) READ, 0x04, 0x00, 0x00, 0x00} 

drugi bajt jest strona Adres czytać.

Powiązane problemy