
24 May 2011
Mango Phone 7

13 Apr 2011
Windows Phone MIX 2011
Un nouveau SDK pour Windows Phone 7 sera disponible en mai et Microsoft annonce les nouveautés suivantes: • Live Agents pour gestion du mutitache, lecture d'audio ou transfert de fichier en background. • Intégration du téléphone meilleure plus de flexibilité dans les gestion des live tiles. • Accès à la boussole, à la cam, aux sockets et à une DB .
Microsoft said it remains on track to start delivering the next version of Windows Phone to new and existing devices by the end of this year. Windows Phone Developer Tools will be available in May, and Microsoft announced that new features will enable the following: • Live Agents create superior customer engagement with real-time interactions via Live Tiles, Push Notifications, Deep Linking and Background Agents. Multitasking is also enhanced to allow for fast applications switching, as well as background audio and file transfer. • Phone integration has been greatly improved for developers wanting to do more with their apps. The Live Tiles functionality has been expanded to give developers more flexibility and engage with their customers better. • Developers will have access to the Motion Sensor library and the camera, enabling augmented reality experiences. The integration extends deeper into the operating system via sockets and database access now available to apps and games.
15 Feb 2011
BarCamp Phone 7

Développeurs mobilité sur Lyon, Iphone, Android, ou Windows Mobile, on vous attend le 22 Mars (après-midi) pour discuter de Microsoft Windows Phone 7. Cette sessions sera sous la forme d'un BarCamp = conférence freestyle mais professionelle : tour de table des candidats, choix des thèmes à aborder, répartition en groupe des participants, travail sur un thème particulier...
Les sujets abordés seront en fonction de l’audience, cependant dans les grandes lignes :
- Pierre Belin (MCP Windows Mobile) vous parlera de développement et de design (orienté UI/UX, Expression Blend, …)
- Vincent Gaviot (marketing Adeneo Embedded) vous parlera des aspects marketplace et monétisation
- Moi-même (MVP device application developement) vous parlerai de développement sous WP7 (le sdk, le web, les spécificités de Windows Phone 7, …)
- Et enfin un intervenant Microsoft viendra nous épauler sur tous ces sujets
C’est une première sur Lyon et c’est gratuit. Par contre, les places sont limitées.
Pour vous inscrire ou avoir plus d’infos, contactez-nous : training.emea@adeneo-embedded.com
11 Jan 2011
Mise à jour Phone 7
Au programme :
- Le copier / coller ;-)
- Amélioration des performances au chargement des applications
- Recherche plus efficace sur le MarketPlace (ce ne sera pas un luxe vous allez me dire ;-)
Et il est prévu pour une prochaine mise à jour : HTML 5 + Silverlight dans IE.
http://www.youtube.com/watch?v=m_u81xRu-yo
As you know, Phone 7 integrates an update mechanism from Zune, we could take profit of this new mechanism at February.
At the program:
- Copy / paste ;-)
- Performance improvements, application load times
- Search engine improvements on MarketPlace (It's not a luxury you will say to me ;-)
And a next update is planned with : HTML 5 + Silverlight in IE.
9 Jan 2011
Graphic assets needed for MarketPlace
- Icône de la tuile en 173 * 173
- Petit icône en 99 * 99
- Grande icône pour le MarketPlace sur le PC en 200 * 200
- Fond d'écran en 1000 * 800
- Des copies d'écran de l'application en 480 * 800
For publishing your application on the Marketplace, you will need some graphics assets under different formats:
- Tile icon : 173 * 173
- Small mobile app icon : 99 * 99
- Large PC app icon : 200 * 200
- Art background : 1000 * 800
- Screenshots : 480 * 800
Pour facilement convertir ces icones, vous pouvez utiliser Gimp, voici la procédure :
To easily do this, you can use Gimp, here are some steps:
- Déplacer l'icone original dans la nouvelle image, redimensionner à la taille de la nouvelle image
Drop the image file in the new image, resize the new image
- Sauvegarder l'image en PNG
Save the image as PNG file
My blog on WP7 app
Soon an application to follow my blog on your Windows Phone 7.
WinMote 7
WinMote est maintenant disponible dans sa première version sur la MarketPlace.WinMote is now available in its first release on the MarketPlace.
WinMote7 est une application de télécommande mise au point par Adeneo Embedded en collaboration avec GoProd qui permet à tout utilisateur de contrôler les medias de son PC Windows 7 à distance via son téléphone Phone 7. L'utilisation de l'application nécessite l'installation d'un serveur WinMote sur votre PC, plus d'info sur le téléchargement du serveur WinMote sont fournies dans l'a propos de l'application. Avec cette application, vous pouvez contrôler votre webbrowser pour lancer des sites Web, lancer et contrôler des vidéos stockées sur votre PC, voir et parcourir vos images, contrôler la musique sur votre PC, lancer des chaines de TV ou de radio Freebox sur votre PC, contrôler et voir vos présentation Power Point. Une version d'essai permettant d'evaluer l'interface utilisateur est disponible gratuitement.
Une FAQ est disponible lors du téléchargement de l'application PC.
Si vous n’avez pas de réseau WIFI local, vous pouvez par exemple transformer votre PC en hotspot à l’aide d’un logiciel prévu pour cet effet (par exemple : http://www.connectify.me/)
Des mises à jour avec de nouvelles fonctionnalités sont prévues.
Si vous vous voulez des infos, envoyez un mail à : WinMote@adeneo-embedded.com
WinMote7 is a remote control application developed by Adeneo Embedded in collaboration with GoProd that allows you controlling various media on your Windows 7 PC via your Windows Phone 7 device. This application requires you to install our WinMote Server on your computer. more info for downloading the WinMote Server is provided inside the about box of the application. With this application, you can control your browser to access web sites, launch and control videos stored on your PC, view and browse your pictures, control your music on your PC, launch Freebox TV or radio channel on your PC, Control and view PowerPoint presentations. A trial version allowing evaluation of the user interface is available for free.
A FAQ is available when server application downloading. If you don’t have a local WIFI network you can transform your PC as a hotspot with a software provided to do this (for example: http://www.connectify.me/)
Some updates with new features are planned.
If you want more info, please send a mail at: WinMote@adeneo-embedded.com
10 Dec 2010
Article Pogrammez : Migration vers Phone 7
J'ai écrit cet article pour le magazine Programmez, il vous donnera un état des lieux de la migration d'une application de Windows Mobile 6.5 vers Phone 7.
Version anglaise disponible la semaine prochaine.
English version of the article «How to migrate your application from WinMO 6.5 to Phone 7 » available next week.
Migration d’une application WinMo 6.5 vers Phone 7
La migration d'une application existante est une question que tout développeur ayant fait le pari de Windows Mobile dans ces versions précédentes doit se poser avec Windows Phone 7. En effet, même si auparavant d'une version sur l'autre, les changements étaient mineurs et la compatibilité globalement assurée, le changement radical opéré par Windows Phone 7 oblige à étudier de nouveaux runtimes (Silverlight et XNA vs .NET Compact Framework 2.0 et 3.5) et de nouveaux outils (Visual Studio 2010 et Expression Blend 4 vs Visual Studio 2008). Loin de se vouloir exhaustive, cette fiche a pour but d'aider un développeur Windows Mobile 6.5 à évaluer « facilement » la tache de portage de son application.
Modèle de l'application
Le modèle actuel de votre application va jouer un rôle primordial dans le portage. Si le découpage interface/ métier de votre application Windows Mobile 6.5 était bien pensé, le portage sera d'autant plus aisé. Les couches IHM seront complètement à récrire, mais les couches logique métiers et modèles de données pourront être réutilisée telles quelles ou portée à quelques deltas près.
Windows Mobile 6.5 | Windows Phone 7 |
Le pattern MVC pouvait être utilisé afin de découpler la couche IHM de la couche métier. Ainsi l'application était composée d'un contrôleur régissant les échanges entre la vue et la couche métier. Si aucun design pattern n'a été suivi, la séparation est plus compliquée, mais c'est aussi l'occasion de restructurer tout ce code ! | Utilisation de Silverlight, le pattern MVVM est plus adapté pour utiliser le data binding et tirer la quintessence de Silverlight. |
L'expérience utilisateur
Comme vu dans le paragraphe précédent, l'interface est donc la partie à refondre complètement, le cas échant l'expérience utilisateur pourra être revue et adaptée à la nouvelle expérience Windows Phone 7.
Windows Mobile 6.5 | Windows Phone 7 |
Aucune recommandation n'était préconisée en termes d'IHM, chacun faisait comme il l'entendait. | Il est souhaitable de coller au langage de design de Windows Phone 7, Metro. L'idée est de faire quelque chose de simple à la manière du guidage dans les aéroports et dans le métro, l'identité graphique est fortement basée sur la typographie, les pictogrammes et les espaces négatifs. L'interface doit rester sobre, fluide et sans chrome |
Afin de ne pas monopoliser le thread d'UI, les traitements complexes doivent être déportés dans autres threads. | Afin de ne pas monopoliser le thread UI, les traitements complexes doivent être déportés dans des autres threads. Ce thread « métier » effectuera le traitement asynchrone et notifiera l'IHM des modifications à la fin du traitement : new { // Traitements à réaliser { // Mise à jour de l'IHM });
}).Start(); |
Les contrôles
La plupart des contrôles de Windows Mobile 6.5 sont disponibles sur Phone 7 avec des propriétés et des possibilités de customisation beaucoup plus évoluées. Le positionnement des contrôles dynamique sera grandement facilité grâce des panels évolués comme le stackpanel ou la grid.
Windows Mobile 6.5 | Windows Phone 7 |
PhoneApplicationFrame | |
Form | PhoneApplicationPage |
MainMenu | Application bar |
System tray | |
Panel | Canvas, StackPanel, Grid |
Button | Button |
TextBox | TextBox |
PictureBox Les PNG transparents ne sont pas gérés nativement, les APIs native d'Alpha Blend doivent être wrappées | Image Le format PNG est supporté nativement et son support est accéléré par GPU |
ListView Difficilement personnalisable | ListBox Très facilement personnalisable à l'aide des Templates disponibles dans Silverlight |
ProgressBar | ProgressBar |
Utilisation d'un panel et des évènements de reconnaissance geste | ScrollViewer |
Label | TextBlock |
Composant MediaPlayer importé depuis l'ActiveX MediaPlayer via un wrapper d'objet COM | Le nouveau composant Media Element est directement accessible depuis le code Silverlight et décode nativement les formats de vidéos suivants : H263 WMV MPEG-4 |
Navigateur WEB System.Windows. Forms.WebBrowser | WebBrowserTask |
Prendre une photo Microsoft.WindowsMobile. Forms.CameraCaptureDialog |
CameraCaptureTask |
Appeler un contact Microsoft. WindowsMobile.Telephony. Phone |
PhoneCallTask |
Envoyer un SMS Microsoft.WindowsMobile .PocketOutlook. SmsMessage |
SmsComposeTask |
Les APIs
Sur Phone 7 fini les spécificités de code et cas particuliers mis en place pour chaque terminal, tout est unifié grâce à un hardware homogène et une API unifiée pour accéder aux différents capteurs du téléphones.
Windows Mobile 6.5 | Windows Phone 7 |
Très fastidieux de récupérer les informations liées au téléphone notamment pour les points suivants : - Accéléromètre - GPS - Radio FM - Gestion des boutons du téléphone Car il est nécessaire de faire appel à des API natives bas-niveau liées au constructeur du téléphone et rarement fournies. | Gestion unifiée des APIs : Accéléromètre (Microsoft.Devices. Sensors.Accelerometer) GPS (System.Device.Location. GeoCoordinateWatcher) Orientation de l'écran Radio FM Gestion des boutons du téléphones |
Orientation de l'écran Microsoft.WindowsCE. Forms.SystemSettings. ScreenOrientation |
PhoneApplicationPage.Orientation PhoneApplicationPage. SupportedOrientation |
La reconnaissance de gestes
Sur Phone 7, l'accès au code natif depuis le C# n'est plus autorisé : finis les wrappers d'API natives, tout est directement utilisable depuis le C# via des classes avec des méthodes et évènements ; c'est typiquement le cas de la reconnaissance des gestes de l'utilisateur sur l'écran.
Windows Mobile 6.5 | Windows Phone 7 |
Import de code natif pour utiliser l'API Gesture qui n'était pas disponible en code managé. (traitement des messages WM_GESTURE) | Chaque contrôle dispose d'évènements de manipulation : ManipulationStarted ManipulationDelta ManipulationCompleted Avec pour chacun des paramètres tels que la vélocité, l'angle… |
Stockage des données en mémoire
Sur Windows Phone 7, le système de fichiers du terminal n'est « accessible » qu'à travers l'Isolated Storage de l'application et aucun SGBD n'est disponible pour l'instant. La persistance des données sera donc mise en œuvre via à l'aide de fichiers XML stockés dans la SandBox ou via des solutions tierces comme SQLite ou Perst.NET.
Windows Mobile 6.5 | Windows Phone 7 |
Utilisation de SQLCE | Utilisation de fichiers XML stockées dans l'Isolated storage et utilisation de LINQ pour requêtes sur les données. Sinon solutions tierces comme SQLite ou Perst.NET. |
Accès au système de fichier | Accès à l'Isolated Storage System.IO.IsolatedStorage.* |
Sauvegarde de settings : Base de registre DB Fichiers | Sauvegarde des settings dans le dictionnaire de l'IsolatedStorage prévu à cet effet : IsolatedStorageSettings Ce dictionnaire permet de sauvegarder des types sérialisables et le « statut » de l'application indépendamment de fichiers ou d'une base de donnée. |
Réseau
L'accès à des données d'un serveur se fera uniquement via un canal http et en mode asynchrone. Pour les évènements asynchrones provenant d'un serveur il est possible d'utiliser des Push Notifications (cf. paragraphe suivant et article sur le sujet)
Windows Mobile 6.5 | Windows Phone 7 |
Sockets | Pas d'accès au socket : pas de TCP ou d'UDP |
HttpWebRequest synchrone | Les WebRequest sont asynchrones, il est conseillé d'utiliser l'objet WebClient qui permet de réaliser une requête http et d'obtenir dont résultat via une callback. Cela peut donc complexifier un peu le code, mais c'est pour le mieux d'un point de vue réactivité de l'interface. |
L'application peut subsister en background et à tout moment prendre le focus ou gérer des évènements comme le réveil de l'application via un SMS entrant. | Système de notifications en push Ce système permet de remonter des informations à une application fermée et d'afficher en permanence un statut à l'utilisateur sur l'icône de l'application par exemple |
Cycle de vie d'une application
Windows Mobile 6.5 | Windows Phone 7 |
L'application reste en background et n'est jamais fermée sauf demande explicite ou soft reset du téléphone | Dès qu'on sort de l'application, cette dernière est fermée et les données ne sont pas automatiquement sauvegardées. Le mécanisme dit de « tombstoning » permet de sauvegarder l'état de l'application et lors du lancement de l'application le restituer. Quatre évènements seront déclenchés afin de mettre en œuvre les comportements adéquats : Launching / Activated : récupération et chargement des données Deactivated / Closing : Sauvegarde des données dans un dictionnaire prévu à cet effet (PhoneApplicationService) |
Outils de debug et de monitoring des performances
Reste un point important à traiter qui impacte directement l'expérience utilisateur, ce sont les performances. Voici, de quoi réaliser quelques benchs afin de vérifier que votre application sera à la hauteur du résultat attendu notamment en termes de fluidité.
Windows Mobile 6.5 | Windows Phone 7 |
Outils du pack Power Toys Remote Performance Monitor NETCF CLR Profiler Remote Logging Configuration Tool … | Les compteurs de performance : (Application.Current.Host. Settings.EnableFrameRateCounter) Compositeur frame rate (fréquence de rafraichissement de l'écran) UI thread frame rate (fréquence du thread UI) Mémoire utilisée pour les textures Nombre de surfaces allouées (Application.Current.Host. Settings.EnableCacheVisualization) (Application.Current.Host.Settings. EnableRedrawRegions) |
Bien que cet article ne soit pas exhaustif, vous avez maintenant les grandes lignes et pièges à éviter pour porter vos applications Windows Mobile 6.5 vers la nouvelle plateforme Windows Phone 7.
Les étapes suivantes résument la démarche à suivre :
- Création du projet WP7
- Ebauche d'un squelette d'application
- Identification des vues et vues-modèles associées aux données à afficher (datacontext)
- Mise en place de la logique de navigation avec passage des données entre les différentes pages
- Import des ressources textuelles dans les différentes langues si l'application est localisée
- Import des ressources graphiques en PNG ou JPG
- Réalisation des différentes pages en gardant bien en tête l'ergonomie Metro (si possible réalisation d'un storyboard de l'application au préalable pour visualiser l'intégralité de l'application), ne pas oublier de tirer parti des nouveaux composants disponibles pour le positionnement des contrôles
- Si besoin réalisation de composants personnalisés pour répondre aux besoins de l'application
- Mise en place du code relatif aux activités vers les services et tâches Windows Phone 7
- Migration des couches métiers
- Identifier les accès aux serveurs distants et « asynchroniser » les traitements pour coller au modèle Windows Phone 7. Afin de réaliser une application fluide, il est de rigueur de pas réaliser de traitements lourds ou bloquants dans le thread UI.
- Identifier le stockage de donnée et mettre en place des classes sérialisables pour stockage en XML dans l'IsolatedStorage.
- Le filtrage et traitement des données via des requêtes LINQ pourra être réutilisé tel quel
- Appel des couches métiers depuis les vues-modèles
- Tests de l'intégration des différentes couches interface et métiers
- Optimisation
Le monitoring des performances pourra être réalisé via le biais des compteurs de performances vus plus haut.
Le portage de votre application Windows Mobile 6.5 ne sera pas forcément trivial au premier abord, mais de nombreux composants métiers resteront réutilisables. Vous verrez rapidement que la nouvelle batterie d'outils et le framework mis à disposition sont très complets et seront vos alliés pour réaliser facilement et rapidement des applications avec une expérience utilisateur sans précédent… L'important est de bien étudier la méthode de migration avant de se lancer dans le code !
11 Oct 2010
Forum Phone 7
Microsoft Answers launched today the Zune et Windows Phone 7 forums on Microsoft Answers. We wait for your questions...
MS Days Lyon 12/10
2nd place : Phone Seven Competition

Adeneo Embedded et Goprod ont participé au concours Phone 7 avec l'application Winmote qui transforme votre Windows Phone 7 en télécommande pour PC. Avec cette application, vous pouvez :
- Lancer un navigateur Web sur le PC
- Lancer une vidéo sur votre PC
- Consulter vos images depuis n'importe où / les afficher / les faire défiler sur vote PC
- Lancer et naviguer dans un PowerPoint
- Lancer la radio / la TV
- ....
Grâce à cette application, nous avons réussi à obtenir la 2ème place départagée à l'applaudimètre !
Check the video
28 Sept 2010
Phone 7 Tools
Phone 7 RTM development Tools are available (with Panorama, Pivot and Bing Map)
Download
Le ToolKit Silverlight est également dispo sur CodePlex (Context Menu, DatePicker, TimePicker, Gesture Recognizer, Toggle Switch, WrapPanel)
Silverlight ToolKit is available on CodePlex (Context Menu, DatePicker, TimePicker, Gesture Recognizer, Toggle Switch, WrapPanel)
Download
Vous avez tout ce qu'il faut pour réaliser vos applications Phone 7 alors allez c'est parti !
You are now ready to realize Windows Phone 7 applications !
Concours Phone 7

11 Jul 2010
New book : data driven applications with .Net compact framework 3-5
CF 3.5 data driven applications,
To have a preview of this book, you can download a free chapter sample :
Chapter 5
Si vous êtes intéressés par la création d'application de gestion de données en CF 3.5, il existe un nouveau livre sur le sujet: CF 3.5 data driver applications,
Vous pouvez consulter le chapitre 5 qui est gratuit.
17 Jun 2010
Windows Embedded Compact 7 Public CTP

- Connections avec d'autres devices ou desktop
- Expérience utilisateur IHM améliorée (Silverlight)
- Fiabilité
- Connected experiences
- Rich User Experience (Silverlight)
- Highly reliable platform
15 Mar 2010
Dev Windows Phone 7
- en plus tous les outils sont gratuits
- Visual Studio 2010 et Expression Blend 4
- Silverlight et XNA
- Emulateur avec support GPU en attendant les terminaux
Big news : Windows Mobile Phone 7 ' SDK is available
- all tools are free
- Visual Studio 2010 and Expression Blend 4
- Silverlight and XNA
- Emulateur with GPU support for waiting real devices
5 Mar 2010
Un avant-gout du dev sur Windows Phone 7
Windows Phone 7 Dev



