|
Преди време си купих мобилен телефон Nokia lumia 930 и през последните няколко дни научих, че има висока функция, наречена NFC, която може да чете банкови карти, универсални карти и друга информация. Сложих банковата си карта на телефона и телефонът изписука, но нищо не се показа. Baidu внезапно откри, че само портфейлите на Alipay на Android имат тази функция, затова проучи и написа малка програма. Както е показано по-долу
Тази програма е много проста – банковата карта ще изкара "банковата карта идва", когато е поставена на мобилния телефон, и "банковата карта е изчезнала", когато си тръгне. Процесът на внедряване е прост и следва:
Създайте празен проект за Windows Phone и добавете три членове на класа и две функции за събития към Главната страница. [mw_shl_code=Шарп, вярно] 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]
След това вземете стандартното NFC устройство в конструктора на MainPage, регистрирате две събития в OnNavigatedTo, които се използват за реакция на събитието, когато банковата карта се приближава до мобилния телефон и излиза, така че когато събитието бъде задействано, процесите DeviceArrived и DeviceDequited ще бъдат извикани, а процесът просто ще изпълни изходен лог. Край
[mw_shl_code=Шарп, вярно] Главна страница::Главна страница()
{ InitializeComponent(); m_proximityDevice = ProximityDevice::GetDefault();
}
void MainPage::OnNavigatedTo(NavigationEventArgs^ e)
{ (void) e; Неизползвани параметри ако (това->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)
{ ГрешкаТекст->Текст += "Банковата карта идва! \r\n";
}
void MainPage::D eviceDeparted(ProximityDevice^ device)
{ ГрешкаТекст->Текст += "Банковата карта я няма! \r\n"; }[/mw_shl_code]
По този начин такава програма се завършва, а следващата стъпка е да се прочете информацията...
Ако имаш време, продължете да го изучавате отново и прочетете данните от банковата карта.
|