Firemonkey Android ile OCR ve Mifare - NFC - RFID Kütüphaneleri - Baskı Önizleme +- Delphi Can (https://www.delphican.com) +-- Forum: Delphi (https://www.delphican.com/forumdisplay.php?fid=3) +--- Forum: Mobil Platform - FireMonkey (FMX) (https://www.delphican.com/forumdisplay.php?fid=7) +--- Konu Başlığı: Firemonkey Android ile OCR ve Mifare - NFC - RFID Kütüphaneleri (/showthread.php?tid=1658) Sayfalar:
1
2
|
Firemonkey Android ile OCR ve Mifare - NFC - RFID Kütüphaneleri - Abdullah ILGAZ - 11-12-2017 Merhaba, Bir projede OCR ve Mifare, NFC ve RFID kart bilgisini okuyabileceğim kütüphanelere ihtiyaç duydum. Konu ile ilgili yaptığım araştırmlar XE5-6-7 zamanında FMXExpress ve birkaç yerde çok az da olsa yapılan çalışmalara götürdü. İşin kötüsü çoğunun referans kaynak linkleri öldüğü için tam bir veri toplayamadım. Elinde bu konu üzerine bilgisi olan varsa yardımcı olabilir mi? Kütüphaneler, JNI.Bridge, Komponent (ücretli-ücretsiz), her şey olabilir. Şimdiden teşekkürler. Dipnot: Winsoft'un kütüphanesini kullanan oldu mu? Cvp: Firemonkey Android ile OCR ve Mifare - NFC - RFID Kütüphaneleri - TescilsizUzman - 11-12-2017 Merhaba, WinSoft tarafından yazılmış ücretli NFC ve OCR bileşen setleri mevcut. Not: Her cihazın, NFC desteği olmadığını (yeni çıkan bir çok telefonda da yok) unutmayın. Cvp: Firemonkey Android ile OCR ve Mifare - NFC - RFID Kütüphaneleri - Abdullah ILGAZ - 11-12-2017 (11-12-2017, Saat: 17:44)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: Merhaba, Hocam hiç deneme fırsatınız oldu mu? OCR açısından stabil midir? NFC tarafında yazma işlemleri yapılabiliyor mu? Kimlik-Pasaport tarzında evraklar için basit ve gelişmiş okuma bilgisi sunuyor mu? Cvp: Firemonkey Android ile OCR ve Mifare - NFC - RFID Kütüphaneleri - TescilsizUzman - 11-12-2017 (11-12-2017, Saat: 17:46)Abdullah ILGAZ Adlı Kullanıcıdan Alıntı:(11-12-2017, Saat: 17:44)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: Merhaba, Maalesef test etmedim, fakat native Android kodlarını kullandığını biliyorum. Stabilitesi konusunda bir şey söylemem. NFC işlemleri için ise bir önceki notumda da belirttiğim gibi, sabit NFC desteği olan yalnızca belli modellere yönelik uygulama geliştiriyorsanız sorun yok demektir. Cvp: Firemonkey Android ile OCR ve Mifare - NFC - RFID Kütüphaneleri - Abdullah ILGAZ - 11-12-2017 Winsoft'un örneklemesine göre; Okuma İşlemi procedure TFormMain.ReadTag(NfcTag: TNfcTag); var NfcA: TNfcA; NfcV: TNfcV; NdefFormatable: TNdefFormatable; Ndef: TNdef; MifareClassic: TMifareClassic; MifareUltralight: TMifareUltralight; TechList: TArray<string>; I, PageCount, PageSize, BlockCount, BlockSize: Integer; NdefRecords: TArray<TNdefRecord>; NdefRecord: TNdefRecord; Blocks: TArray<TArray<Byte>>; Data: TArray<Byte>; begin ClearLines; AddLine('ID: ' + NfcTag.Id); // TechList AddLine(''); TechList := NfcTag.TechList; for I := Low(TechList) to High(TechList) do AddLine('Tech ' + IntToStr(I) + ': ' + TechList[I]); // NFC A NfcA := NfcTag.NfcA; if NfcA <> nil then begin AddLine(''); AddLine('NFC-A'); AddLine(' SAK/SEL_RES: $' + IntToHex(NfcA.Sak, 4)); AddLine(' ATQA: $' + BytesToHexReverse(NfcA.Atqa)); AddLine(' Max transceive length: ' + IntToStr(NfcA.MaxTransceiveLength)); AddLine(' Timeout: ' + IntToStr(NfcA.Timeout)); end; // NFC V NfcV := NfcTag.NfcV; if NfcV <> nil then begin AddLine(''); AddLine('NFC-V'); AddLine(' DSF ID: $' + IntToHex(NfcV.DsfId, 2)); AddLine(' Response flags: $' + IntToHex(NfcV.ResponseFlags, 2)); AddLine(' Max transceive length: ' + IntToStr(NfcV.MaxTransceiveLength)); BlockCount := NfcV.BlockCount; BlockSize := NfcV.BlockSize; AddLine(' Block count: ' + IntToStr(BlockCount)); AddLine(' Block size: ' + IntToStr(BlockSize)); for I := 0 to BlockCount - 1 do AddLine(' Block $' + IntToHex(I, 2) + ': ' + BytesToHex(NfcV.ReadBlock(I))); end; // NDEF Formatable NdefFormatable := NfcTag.NdefFormatable; if NdefFormatable <> nil then begin AddLine(''); AddLine('NDEF Formatable'); end; // NDEF Ndef := NfcTag.Ndef; if Ndef <> nil then begin AddLine(''); AddLine('NDEF'); AddLine(' Type: ' + Ndef.&Type); AddLine(' Max size: ' + IntToStr(Ndef.MaxSize)); if Ndef.IsWritable then AddLine(' Is writable'); if Ndef.CanMakeReadOnly then AddLine(' Can make read-only'); NdefRecords := Ndef.Records; for I := 0 to Length(NdefRecords) - 1 do begin NdefRecord := NdefRecords[I]; AddLine(' Record ' + IntToStr(I)); AddLine(' Top level type: ' + NdefRecord.TnfDescription); if NdefRecord.IsText then begin AddLine(' Language code: ' + NdefRecord.TextLanguageCode); AddLine(' Text: ' + NdefRecord.Text) end else if NdefRecord.IsUri then AddLine(' URI: ' + NdefRecord.Uri) else if NdefRecord.IsExternalType then AddLine(' External text: ' + NdefRecord.ExternalText) else AddLine(' Payload: ' + BytesToHex(NdefRecord.Payload)); end; end; // MIFARE Classic MifareClassic := NfcTag.MifareClassic; if MifareClassic <> nil then begin AddLine(''); AddLine(MifareClassic.TypeDescription); AddLine(' Block size: ' + IntToStr(MifareClassic.BlockSize)); AddLine(' Block count: ' + IntToStr(MifareClassic.BlockCount)); AddLine(' Sector count: ' + IntToStr(MifareClassic.SectorCount)); AddLine(' Size: ' + IntToStr(MifareClassic.Size)); AddLine(' Max transceive length: ' + IntToStr(MifareClassic.MaxTransceiveLength)); AddLine(' Timeout: ' + IntToStr(MifareClassic.Timeout)); Blocks := MifareClassic.ReadBlocks; for I := 0 to Length(Blocks) - 1 do AddLine(' Block ' + IntToStr(I) + ': ' + BytesToHex(Blocks[I])); end; // MIFARE Ultralight MifareUltralight := NfcTag.MifareUltralight; if MifareUltralight <> nil then begin AddLine(''); AddLine(MifareUltralight.TypeDescription); AddLine(' Page count: ' + IntToStr(MifareUltralight.PageCount)); AddLine(' Max transceive length: ' + IntToStr(MifareUltralight.MaxTransceiveLength)); AddLine(' Timeout: ' + IntToStr(MifareUltralight.Timeout)); Data := MifareUltralight.ReadData; PageCount := MifareUltralight.PageCount; PageSize := Length(Data) div PageCount; for I := 0 to PageCount - 1 do AddLine(' Page ' + IntToStr(I) + ': ' + BytesToHex(Data, PageSize * I, PageSize)); end; end; Yazma İşlemi procedure TFormMain.WriteTag(NfcTag: TNfcTag); var Ndef: TNdef; TextRecord, UriRecord, ApplicationRecord: TNdefRecord; begin ClearLines; AddLine('ID: ' + NfcTag.Id); AddLine(''); // NDEF Ndef := NfcTag.Ndef; if Ndef = nil then AddLine('Unsupported tag') else if not Ndef.IsWritable then AddLine('Tag is not writable') else begin TextRecord := TNdefRecord.CreateTextRecord('Hello, world!'); UriRecord := TNdefRecord.CreateUriRecord('http://www.winsoftxe.com'); ApplicationRecord := TNdefRecord.CreateApplicationRecord('com.adobe.reader'); if Ndef.Write([TextRecord, UriRecord, ApplicationRecord]) then AddLine('Tag written') else AddLine('Cannot write tag') end; end; Format Belirleme İşlemi procedure TFormMain.FormatTag(NfcTag: TNfcTag); var NdefFormatable: TNdefFormatable; begin ClearLines; AddLine('ID: ' + NfcTag.Id); AddLine(''); NdefFormatable := NfcTag.NdefFormatable; if NdefFormatable = nil then AddLine('Tag is not formatable') else if NdefFormatable.Format then AddLine('Tag formated') else AddLine('Cannot format tag') end; Firemonkey Android ile OCR ve Mifare - NFC - RFID Kütüphaneleri - adelphiforumz - 12-12-2017 Bir kaç hafta önce denemeler yaparken test için bulduğum bi ornek vardı onun linkini atıyorum belki işinize yarar https://we.tl/7Pii84uWU0 Firemonkey Android ile OCR ve Mifare - NFC - RFID Kütüphaneleri - narkotik - 01-09-2018 Merhaba Abdullah bey NFC ile kart okuma işlemi yapabildiniz mi? Cvp: Firemonkey Android ile OCR ve Mifare - NFC - RFID Kütüphaneleri - Abdullah ILGAZ - 01-09-2018 (01-09-2018, Saat: 19:34)narkotik Adlı Kullanıcıdan Alıntı: Merhaba Abdullah bey NFC ile kart okuma işlemi yapabildiniz mi? Merhaba, Belirli bir aşamaya kadar getirebildik ancak sonrasında ilerleme kaydedemedik. Winsoft'a ücret karşılığı bir komponent geliştirme siparişi verdik, 3 hafta bekledikten sonra olumsuz yanıt aldık. Projenin genel maliyet hesaplamasında çok yukarıda kaldığımız için proje iptal edildi. NFC üzerinde ilerleme kaydederseniz gündemime tekrar alabilirim. Cvp: Firemonkey Android ile OCR ve Mifare - NFC - RFID Kütüphaneleri - narkotik - 01-09-2018 (01-09-2018, Saat: 22:12)Abdullah ILGAZ Adlı Kullanıcıdan Alıntı:(01-09-2018, Saat: 19:34)narkotik Adlı Kullanıcıdan Alıntı: Merhaba Abdullah bey NFC ile kart okuma işlemi yapabildiniz mi? Winsoftun demoları çalışıyor fakat ücretli bir component ücretsiz bir çözüm arıyorum şuanda Firemonkey Android ile OCR ve Mifare - NFC - RFID Kütüphaneleri - narkotik - 02-09-2018 @Abdullah ILGAZ Hocam NFC okuma işlemini Şununla çözdüm çalışıyor tokyoda denedim paylaşıyorum. http://s7.dosya.tc/server9/5t61hp/NFC_Samples_10.1_Berlin.rar.html |