|
Před časem jsem si koupil mobilní telefon Nokia Lumia 930 a za posledních pár dní jsem zjistil, že existuje vysoká funkce zvaná NFC, která dokáže číst bankovní karty, všechno v jednom a další informace. Dal jsem si do telefonu bankovní kartu a telefon pípnul, ale nic se neukázalo. Baidu najednou zjistil, že tuto funkci mají pouze peněženky Alipay na Androidu, a tak si to prozkoumalo a napsalo malý program. Jak je vidět níže
Tento program je velmi jednoduchý, bankovní karta při vložení do mobilu zobrazí "karta přichází" a při odchodu "karta je pryč". Proces implementace je jednoduchý a následující:
Vytvořte prázdný projekt pro Windows Phone a přidejte tři členy třídy a dvě události na MainPage. [mw_shl_code=csharp, pravda] 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]
Poté nastavte výchozí NFC zařízení do konstruktoru MainPage, zaregistrujte dvě události v OnNavigatedTo, které se používají k reakci na případ, že se platební karta přiblíží k mobilu a odejde, takže při spuštění události budou vyvolány procesy DeviceArrived a DeviceDeparted a proces jednoduše vykoná výstupní log. konec
[mw_shl_code=csharp, pravda] MainPage::MainPage()
{ InitializeComponent(); m_proximityDevice = ProximityDevice::GetDefault();
}
void MainPage::OnNavigatedTo(NavigationEventArgs^ e)
{ (void) e; Nevyužité parametry pokud (tohle->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^ device)
{ ErrorText->Text += "Přichází bankovní karta! \r\n";
}
void MainPage::D eviceDeparted(ProximityDevice^ device)
{ ErrorText->Text += "Bankovní karta je pryč! \r\n"; }[/mw_shl_code]
Tímto způsobem je takový program dokončen a dalším krokem je přečíst informace...
Pokud máte čas, pokračujte ve studiu a přečtěte si údaje o platební kartě.
|