|
Ik heb een tijdje geleden een Nokia Lumia 930 mobiele telefoon gekocht, en de afgelopen dagen ontdekte ik dat er een hoge functie bestaat genaamd NFC, waarmee ik bankkaarten, alles-in-één kaarten en andere informatie kan lezen. Ik deed mijn bankpas op mijn telefoon en de telefoon piepte, maar er werd niets getoond. Baidu ontdekte plotseling dat alleen Alipay-wallets op Android deze functie hebben, dus onderzocht het en schreef een klein programma. Zoals hieronder getoond
Dit programma is heel eenvoudig: de bankkaart geeft "de bankkaart komt eraan" wanneer deze op de mobiele telefoon wordt geplakt, en de "bankkaart is weg" wanneer hij vertrekt. Het implementatieproces is eenvoudig en volgt:
Maak een leeg Windows Phone-project aan en voeg drie klasseleden en twee gebeurtenisfuncties toe aan de Hoofdpagina. [mw_shl_code=csharp, waar] Windows::Foundation::EventRegistrationToken m_arrivedToken;
Windows::Foundation::EventRegistrationToken m_departedToken;
Windows::Networking::Proximity::ProximityDevice^ m_proximityDevice;
void DeviceArrived(Windows::Networking::P roximity::P roximityDevice^ device); void DeviceDeparted(Windows::Networking::P roximity::P roximityDevice^ device); [/mw_shl_code]
Vervolgens haal je het standaard NFC-apparaat in de constructor van MainPage, registreer je twee gebeurtenissen in OnNavigatedTo, die worden gebruikt om te reageren op het incident waarbij de bankkaart de mobiele telefoon nadert en vertrekt, zodat wanneer het event wordt geactiveerd, de DeviceArrived en DeviceDeverted-processen worden aangeroepen en het proces simpelweg een outputlog uitvoert. over
[mw_shl_code=csharp, waar] Hoofdpagina::Hoofdpagina()
{ InitializeComponent(); m_proximityDevice = ProximityDevice::GetDefault();
}
void Hoofdpagina::OnNavigatedTo(NavigationEventArgs^ e)
{ (void) e; Ongebruikte parameters als (deze->m_proximityDevice)
{ m_arrivedToken = m_proximityDevice->DeviceArrived += ref new DeviceArrivedEventHandler(this, &MainPage::D eviceArrived, CallbackContext::Same); m_departedToken = m_proximityDevice->DeviceDeparted += ref new DeviceDepartedEventHandler(this, &MainPage::D eviceDeparted, CallbackContext::Same);
}
}
void MainPage::D eviceArrived(ProximityDevice^ apparaat)
{ FoutText->Text += "De bankkaart komt eraan! \r\n";
}
void MainPage::D eviceDeparted(ProximityDevice^ device)
{ FoutTekst->Tekst += "De bankkaart is weg! \r\n"; }[/mw_shl_code]
Op deze manier wordt zo'n programma afgerond, en de volgende stap is het lezen van de informatie. . .
Als je tijd hebt, lees het dan opnieuw en lees de creditcardgegevens voor.
|