Création d'une application Windows Store avec le WiDi

 

A travers cet article, j'essayerais d'intégrer la technologie Intel WiDi dans une application Windows Store (8.1) en l’occurrence Alerte Pollen.

Le matériel utilisé est le suivant:

  1. Ultrabook (Processor: Intel Core i5-4350U, RAM: 4Go)
  2. TV HD
  3. Boitier Miracast et Intel WiDi
  4. 2 câbles : un câble HDMI et un câble USB

Alors c'est quoi WiDi?

Il s'agit  d'un boitier miracast et intel WiDi, c'est aussi le récepteur de tout le contenu et les applications de votre tablette ou smartphone android ou encore votre PC sous Windows 8, sur votre Télé, en Wifi!

Le boitier est raccordé à la Télé via deux câbles USB et HDMI comme l'illustre la figure suivante:

 

 

En premier lieu, il faut lancer la barre des "Charms" puis choisir "Devices".

Ensuite, une fois le menu Flyout des Devices est affiché on clique sur "Project".

Si notre TV HD n'est pas encore connecté à l'Utrabook, il suffit de la rajouter depuis l'écran ci-dessous:

Au niveau du menu Flyout "Project", notre Télé apparaît sous le nom coup-PTV3000!

Dès que la connexion est terminée, le développeur pourra choisir le mode projection souhaité:

Pour personnaliser encore plus la projection (autre que les 4 modes classiques de projection), nous pouvons faire recours à la nouvelle API de projection qui est intégré à Windows 8.1. La classe ProjectionManager permet de projeter le contenu de ton écran actuel sur un second écran ou un autre type de projecteur.



private async void ItemGridView_ItemClick(object sender, ItemClickEventArgs e)

	{

	                var item = (MenuGroupItem)e.ClickedItem;

	                await CoreApplication.CreateNewView().Dispatcher.RunAsync(

	                      CoreDispatcherPriority.Normal,

	                      () =>{   ApplicationView newAppView = ApplicationView.GetForCurrentView();

                               if (item.DetailType != typeof (QuickSearchPage))

	                               {

	                                   Dispatcher.RunAsync(CoreDispatcherPriority.Normal,

	                                       () => this.Frame.Navigate(typeof (SplitPageDetail), item));

	                               }

	                               else

	                               {

	                                   Dispatcher.RunAsync(CoreDispatcherPriority.Normal, ()=>this.Frame.Navigate(item.DetailType, item));

	                               }

	                               Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () => Window.Current.Content = this.Frame);

	                                ProjectionManager.StartProjectingAsync(newAppView.Id, appView.Id);

	                            });           

	        }


Le résultat obtenu est le suivant: Sur l'Ultrabook, on voit l'écran d'accueil de l'application et sur la Télé on voit un autre écran dès qu'on clique sur une catégorie.

Para obtener más información sobre las optimizaciones del compilador, consulte el aviso sobre la optimización.