[WP7] Créez votre compte Marketplace !

Le 22 novembre 2010 à 17:54

Vous développez sous Windows Phone 7 et vous souhaitez tester (et déployer) votre application ? L’étape d’inscription par Marketplace est donc obligatoire, et on peut dire que l’on peut être très vite déboussolé quand on éprouve quelques difficultés pour activer correctement son compte.

Cet article va cibler principalement les étudiants, mais il est valable également pour tout le monde.

Avant toute chose, si vous êtes étudiants, inscrivez-vous sur Dreamspark (si ce n’est pas déjà fait, n’oubliez pas de vous munir de votre carte ISIC ; au passage si vous ne connaissez pas Dreamspark, celui-ci vous permettra d’avoir des licences Microsoft gratuitement tels que Microsoft Windows Server 2008 R2 ou Visual Studio 2010 !). Dreamspark va vous permettre d’utiliser un compte Marketplace gratuit (sinon 99$).

Première étape : l’inscription au site App Hub
Il faut vous rendre sur ce site, App Hub, qui sera votre interface principale de gestion pour vos applications à déployer sur le Marketplace.

image

 

Ensuite, cliquez sur « Sign in » (utilisez le même LiveID que Dreamspark).
Il faudra à présent choisir le type de compte que vous souhaitez, ici nous allons choisir « Students » :

image

Ensuite, entrez vos informations personnelles :

image

Petite mise en garde : le Publisher Name (qui sera le nom utilisé sur chacune de vos applications sur le Marketplace) n’est pas modifiable ! Donc veillez bien à choisir un nom correct, idéalement votre nom/prénom :)

Il faut à présent créer un compte XBOX Live, qui est requis pour le développement. Un Gamertag vous est donc demandé.

image

Comme vous êtes étudiant, aucun paiement n’est requis. Par contre, si votre compte Dreamspark n’a pas été activé, vous serez bloqué : vous devrez donc vous rendre sur Dreamspark et débloquer votre inscription.

image

Vérifiez maintenant vos mails : vous devrez confirmer votre inscription.

image

image

Si vous vous rendez sur votre tableau de bord, vous pouvez constater que pour l’instant, seul votre e-mail a été vérifié, et il faut encore que votre identité le soit.

image

Même si cela n’est pas conseillé car le processus de validation doit normalement être enclenché automatiquement (personnellement j’ai craqué, car j’ai attendu presque 3 semaines) et comme vous avez un compte étudiant, vous pouvez tout d’abord envoyer une première application pour lancer le processus (certains envoi une vraie application, d’autre une fausse…) ! Je sais, ce n’est pas super pratique  mais c’est une étape indispensable pour valider votre compte (ceux par contre qui ont un compte pro ou Individual, pas besoin de faire ce « bidouillage ». Le processus de validation est enclenché rapidement dans votre cas)

image

Remplissez tous les champs nécessaires et validez votre « application ».

Maintenant, il va falloir attendre que GeoTrust vous contacte. Normalement ça devrait être assez rapide (environ 2-3h pour moi).

Vous devrez dans un premier temps, approuvez les données de contact de votre compte pour GeoTrust :

image

Ensuite, il va falloir (de nouveau) attendre que GeoTrust vous demande de compléter un formulaire et le renvoyer accompagné d’une photocopie d’une pièce d’identité (tout sera détaillé dans le mail). Si jamais, vous n’êtes pas contacté, n’hésitez pas à contacter le support de Microsoft, vous aurez une réponse assez rapidement (par contre n’oubliez pas qu’il y a un décalage horaire ! Une réponse à 1h00 du matin ça peut arriver ;)).
Une fois que GeoTrust vous aura (totalement !) approuvé, Microsoft vous activera votre compte dans les 24h.

A présent vous pouvez enfin tester vos applications sur votre téléphone ! Pour cela, connectez votre téléphone à votre ordinateur, déverrouillez l’écran et ouvrez l’utilitaire « Windows Phone Developper Registration ». Entrez vos données, et votre téléphone sera prêt pour vos développements :).

image

Mais tout n’est pas encore gagné pour autant : si vous voulez les poster sur le Marketplace des applications payantes, il faudra encore que vous entriez vos coordonnées bancaires, ce qui ne pose pas de problème mais un numéro de VAT (numéro de TVA intracommunautaire) vous sera demandé et ce champ est obligatoire.
Comme vous avez un compte étudiant, il est normal que vous ne disposez pas de ce numéro (aussi pour les personnes enregistré comme « Individual », et même si vous êtes auto-entrepreneur, vous ne pouvez pas disposer de ce numéro vu que vous êtes assujetti à la TVA), Microsoft en parle sur le forum App Hub et disent qu’il va bientôt y avoir un correctif d’App Hub pour remédier à ce problème.
(par contre, pour la petite histoire, je viens de le remarquer à l’instant où j’écris ces lignes, il y a deux jours il était encore demandé aux personnes ayant ce problème d’envoyer un mail à cette adresse : mkdevsup@microsoft.com et de respecter l’objet suivant : « RegID4 - VAT ID required when it should be optional » ; et ne pas oublier d’indiquer le Live ID associé).

 

[Mise �� jour 24/07/2011] vous souhaitez vous faire payer votre application, il faut savoir qu’il faut remplir quelques formulaires :).

Le premier formulaire que vous devrez renvoyer à Microsoft : W8-BEN (PDF du formulaire) . Ce formulaire est indispensable mais vous fera payer une double taxe : 30% pour les impôts Américains (IRS) et 30% pour Microsoft.

Pour être exonéré de l’IRS, il faut falloir avoir un numéro ITIN pour les particuliers ou EID pour les entreprises.

Mais pour pouvoir remplir le formulaire W8-BEN et le renvoyer à Microsoft, il va falloir avoir en premier lieu son numéro ITIN ou EID (ici je vais m’attarder sur ITIN).

Pour demander à avoir un ITIN, il faut remplir le formulaire W7 et le renvoyer à l’IRS en attendant une réponse de leur part (pour trouver ce formulaire, c’est ici). Au passage, il vous sera demander d’avoir une copie d’identité conforme, c’est à dire à faire en mairie.

Une fois votre numéro ITIN acquis, vous n’avez plus qu’à remplir le formulaire W8-BEN et à le renvoyer à Microsoft :) (pour l’envoi du formulaire W7, l’adresse est indiqué dans le formulaire, et pour le formulaire W8-BEN, il est indiqué sur ce lien).

Une fois tout ce processus accompli, vous pourrez être payé tout en étant allégé des impôts américains !

Cet article pourra être modifié selon les informations que j’ai et que je reçois. N’hésitez pas à revenir de temps en temps :).

 

Mise à jour du 10/12/2010 : vous pouvez à présent entrer vos informations bancaire normalement, le numéro VAT est maintenant facultatif ! :)

Mais j’avoues que je n’avais pas prêté attention au formulaire W-8BEN form qu’il faut remplir et envoyer à Microsoft. Je vais le faire sous peu, et je modifierai à nouveau cet article pour des informations complémentaires !

Mise à jour du 24/07/2011 : processus pour être payer via formulaire W7 et W8-BEN et à présent la validation Geotrust n’est plus obligatoire pour les étudiants et les particuliers !

 

A bientôt !

[WP7/Silverlight] Une alternative à la classe System.Drawing.Bitmap

Le 14 septembre 2010 à 11:09

Sur Windows Phone 7, tout comme Silverlight d’ailleurs, la classe Bitmap n’existe pas (bon il faut être lucide, la classe Bitmap est une encapsulation d’une bitmap GDI+, donc ça parait logique que ce ne soit pas disponible sinon ce serait trop ancré avec Windows :)). Cela peut poser problème dans des plusieurs cas concrets, comme notre application TranslateIt présenté sur ce blog et pour le concours de Windows Phone 7 organisé par Microsoft. Dans notre cas, nous avons besoin de découper une image et avec la classe Bitmap, cela est très simple avec la méthode Clone().
Il a donc fallu trouver une alternative à cette classe. Nous sommes donc passer sur WriteableBitmap avec ses méthodes d’extensions disponibles dans le projet WriteableBitmapEx sur Codeplex.

La description du projet est très claire :

The WriteableBitmapEx library is a collection of extension methods for Silverlight's WriteableBitmap. The WriteableBitmap class that was added in Silverlight 3, allows the direct manipulation of a bitmap and could be used to generate fast procedural images by drawing directly to a bitmap. The WriteableBitmap API is very minimalistic and there's only the raw Pixels array for such operations. The WriteableBitmapEx library tries to compensate that with extensions methods that are easy to use like built in methods. The library extends the WriteableBitmap class with elementary and fast (2D drawing) functionality, supporting common shapes like point, line, ellipse, polyline, quad, rectangle, triangle. Conversion methods and functions to combine WriteableBitmaps (Blitting) are part of it too.

Comme on peut le constater, c’est très complet :).

Pour reprendre les exemples de Codeplex :

// Initialize the WriteableBitmap with size 512x512 and set it as source of an Image control
WriteableBitmap writeableBmp = new WriteableBitmap(512, 512);
ImageControl.Source = writeableBmp;

// Load an image from the calling Assembly's resources only by passing the relative path
writeableBmp = new WriteableBitmap(0, 0).FromResource("Data/flower2.png");

// Clear the WriteableBitmap with white color
writeableBmp.Clear(Colors.White);

// Set the pixel at P(10, 13) to black
writeableBmp.SetPixel(10, 13, Colors.Black);

// Get the color of the pixel at P(30, 43)
Color color = writeableBmp.GetPixel(30, 43);

// Green line from P1(1, 2) to P2(30, 40)
writeableBmp.DrawLine(1, 2, 30, 40, Colors.Green);

// Line from P1(1, 2) to P2(30, 40) using the fastest draw line method with the color as
// integer
int[] pixels = writeableBmp.Pixels;
int w = writeableBmp.PixelWidth;
int h = writeableBmp.PixelHeight;
WriteableBitmapExtensions.DrawLine(pixels, w, h, 1, 2, 30, 40, myIntColor);

// Black triangle with the points P1(10, 5), P2(20, 40) and P3(30, 10)
writeableBmp.DrawTriangle(10, 5, 20, 40, 30, 10, Colors.Black);

// Red rectangle from the point P1(2, 4) that is 10px wide and 6px high
writeableBmp.DrawRectangle(2, 4, 12, 10, Colors.Red);

// Filled blue ellipse with the center point P1(2, 2) that is 8px wide and 5px high
writeableBmp.FillEllipseCentered(2, 2, 8, 5, Colors.Blue);

// Closed green polyline with P1(10, 5), P2(20, 40), P3(30, 30) and P4(7, 8)
int[] p = new int[] { 10, 5, 20, 40, 30, 30, 7, 8, 10, 5 };
writeableBmp.DrawPolyline(p, Colors.Green);

// Cubic Beziér curve from P1(5, 5) to P4(20, 7) with the control points P2(10, 15)
// and P3(15, 0)
writeableBmp.DrawBezier(5, 5, 10, 15, 15, 0, 20, 7,  Colors.Purple);

// Cardinal spline through the points P1(10, 5), P2(20, 40) and P3(30, 30) with a 
// tension of 0.5
int[] pts = new int[] { 10, 5, 20, 40, 30, 30};
writeableBmp.DrawCurve(pts, 0.5,  Colors.Yellow);

// A filled Cardinal spline through the points P1(10, 5), P2(20, 40) and P3(30, 30) 
// with a tension of 0.5
writeableBmp.FillCurveClosed(pts, 0.5,  Colors.Green);

// Blit a bitmap using the additive blend mode at P1(10, 10)
writeableBmp.Blit(new Point(10, 10), bitmap, sourceRect, Colors.White, 
                                              WriteableBitmapExtensions.BlendMode.Additive);

// Override all pixels with a function that changes the color based on the coordinate
writeableBmp.ForEach((x, y, color) => Color.FromArgb(color.A, (byte)(color.R / 2), 
                                                                       (byte)(x * y), 100));

// Present the WriteableBitmap!
writeableBmp.Invalidate();

// Take snapshot
var clone = writeableBmp.Clone();

// Save to a TGA image stream (file for example)
writeableBmp.WriteTga(stream);

// Crops the WriteableBitmap to a region starting at P1(5, 8) and 10px wide and 10px high
var cropped = writeableBmp.Crop(5, 8, 10, 10);

// Resizes the WriteableBitmap to 200px wide and 300px high using a bilinear
// interpolation method
var resized = writeableBmp.Resize(200, 300, 
                                          WriteableBitmapExtensions.Interpolation.Bilinear);

A bientôt !

A propos de l'auteur

Mathieu Perrein - Software Solutions Manager, Software Architect, Trainer MCT, MSP de 2010 à 2012.

 

MSP

 

MSP

MSP

 MSPD

MCT

 

Facebook

 

Ce blog est strictement personnel et les opinions exprimées ici n'engagent donc que moi, et pas mon employeur.

Tags

Vous avez désactivé JavaScript ou bien vous possédez une ancienne version d'Adobe Flash Player. Téléchargez la dernière version de Flash Player.