C++ v android (eclipse)

Zdravo,

Imam eno vprašanje. Pred časom (kakih 8let) sem naredil program, ki deluje v okolju WinCE, namen pa je branje brezkontaktnih kartic Mifare 1k in nato izpis podatkov. Gre se za avtobusne karte. Sedaj pa bi rad ta program predelal v android, kar mi tudi že delno uspeva, lepo preberem/odklenem pravilni sektor in pravilne bloke in dobim ven neko HEX številko v smislu 00000F3E40045....Pač vse znake iz tega sektorja.

Kako bi najlažje sedaj to hex kodo "prebral" v svojo strukturo? Nimam namreč nobenega pojma o androidu in se šele učim, a to bi res rabil...

Je pa sedaj v C++ stvar taka: Preberem karto in z dobljeno informacijo (HEX) napolnim tole strukturo (iz katere nato preko druge funkcije preberem potrebne podatke):

BYTE
global_mask[26] = { 0x00,0xFF,0xFF,0xFF,
0x00,0x0F,0xFF,0xFF,
0x00,0x7F,
0x00,0x7F,
0x00,0x0F,
0x00,0x03,
0x00,0xFF,
0x00,0x0F,
0x00,0x3F,
0x00,0x1F,
0x00,0x1F};

Razlaga te strukture pa je taka:

/* stevilo bitov :

cardnum = 0x00,0xFF,0xFF,0xFF, 24 bitov, max stev :16777216
potnik
num = 0x00,0x0F,0xFF,0xFF, 20 bitov, max stev : 1048576
stkop = 0x00,0x7F, 7 bitov, max stev : 128
st
org = 0x00,0x7F, 7 bitov, max stev : 128
tippkarte = 0x00,0x0F, 4 bitov, max stev : 16
appllno = 0x00,0x03, 2 bitov, max stev : 4
tip
karte = 0x00,0xFF, 8 bitov, max stev : 256
bazictype = 0x00,0x0F, 4 biti, max stev : 16
linec = 0x00,0x3F, 6 bitov, max stev : 64
colc = 0x00,0x1F, 5 bitov, max stev : 32
pc
num = 0x00,0x1F, 5 bitov, max stev : 32


        skupaj  :                   92 bitov

*/

Torej, kako bi isto/enako stvar naredil pod androidom?

Hvala za odgovore!

2 odgovora

Hvala, bom pregledal in poizkusil kaj narediti. Javim rezultat.