Запуск рынков BlackBerry и Windows Phone из тега NFC, если приложение не установлено

Есть ли способ запустить магазины BlackBerry или Windows Phone с NFC-метки, когда приложение не установлено?

Я имею в виду, как и AAR на платформе Android, если приложение, для которого предназначен тег, не установлено, запускается магазин Google Play.

Спасибо.


person Tx33    schedule 11.02.2013    source источник


Ответы (2)


Вот как вы можете запустить установленное приложение Windows Phone или перенаправить в Магазин, если оно не установлено:

  • Поместите сообщение NDEF в тег с тегом запись LaunchApp в качестве первой записи.
  • Установите идентификатор платформы на «WindowsPhone».
  • Установите идентификатор приложения на идентификатор приложения (чтобы получить идентификатор приложения, просто просмотрите веб-магазин приложений, идентификатор находится в конце URL-адреса, например, для Facebook URL-адрес приложения http://www.windowsphone.com/en-us/store/app/facebook/82a23635-5bd9-df11-a844-00237de2db9e, идентификатор приложения — 82a23635-5bd9-df11-a844-00237de2db9e).

Эта библиотека на Codeplex может помочь в создании таких записей NDEF на Windows Phone.

person Olivier Payen    schedule 11.02.2013
comment
Спасибо, Оливье, это будет работать на WindowsPhone, с какой версии WindowsPhone это доступно? Кто-нибудь еще знает что-нибудь о ББ? - person Tx33; 12.02.2013
comment
Это доступно с Windows Phone 8 - person Olivier Payen; 13.02.2013
comment
Что, если мой тег основан на URI для совместимости с другими платформами, такими как Android? Он запускает приложение в Windows Phone, но, похоже, не находит его в магазине. - person Sharjeel Ahmed; 11.06.2013

Код для получения сообщения от тега NFC

ProximityDevice device = ProximityDevice.GetDefault();

// Make sure NFC is supported
if (device!= null)
{
  long Id = device.SubscribeForMessage ("Windows.SampleMessageType", messageReceived);
  Debug.WriteLine("Published Message. ID is {0}", Id);

  // Store the unique message Id so that it 
  // can be used to stop subscribing for this message type
}

private void messageReceived(ProximityDevice sender, ProximityMessage message)
{

  Debug.WriteLine("Received from {0}:'{1}'", sender.DeviceId, message.DataAsString);
  openMarketPlace(message.DataAsString);
}

Как получить идентификатор приложения, чтобы открыть страницу приложения на торговой площадке

private void openMarketPlace(string appID){
MarketplaceDetailTask marketplaceDetailTask = new MarketplaceDetailTask();
marketplaceDetailTask.ContentIdentifier = appID;
marketplaceDetailTask.Show();
}
person isso    schedule 11.02.2013