Affichage des articles dont le libellé est Windows Mobile. Afficher tous les articles
Affichage des articles dont le libellé est Windows Mobile. Afficher tous les articles

samedi 6 février 2010

Consommer un webservice dans une application mobile

Pour utiliser un web service dans une application mobile en c#, le principe est le même que dans une application c# classique.

Tout d'abord, il faut ajouter la référence du service au projet mobile (clic droit -> ajouter une référence Web) , on entre alors l'adresse du web service, on le nomme et on valide.

On peut à tout moment connaitre le contenu du web service en faisant un clic droit -> Afficher dans l'explorateur d'objets. Cela permet de connaitre les méthodes proposée, et les types utilisés.

Pour utiliser un web service, il faut l'instancier :
WebService.NomDuService ws = new WebService.NomDuService();
On peut alors faire des appels aux méthodes présents :
ws.maMethodeWeb();
De même, on peut utiliser un type présent dans un web service :
WebService.MonType montype;
Cela peut s'avérer utile lorsque le web service demande des paramètres particuliers ou lorsqu'il retourne une valeur d'un type non simple.

vendredi 5 février 2010

Proposer de passer un appel

Lorsqu'un utilisateur de notre application envoie sa position, il souhaite connaitre les noms et les numéros des personnes proches de lui. Pour lui éviter de devoir retaper le numéro, nous proposons d'appeler directement.

Pour cela, il suffit d'utiliser un code très simple mais pas forcément évident à trouver sur Internet :
Microsoft.WindowsMobile.Telephony.Phone myPhone = new Microsoft.WindowsMobile.Telephony.Phone();
myPhone.Talk("0123456789", true);

Il ne faut pas oublier d'inclure
Microsoft.WindowsMobile.Telephony;

Récupérer une carte depuis google maps

Pour permettre à l'utilisateur d'avoir un plan dans l'application, nous avons utilisé Google Maps. En effet, Google met à sa disposition des outils afin de récupérer une carte d'un endroit souhaité.

Pour nous aider, nous nous sommes fortement inspirés du tutoriel proposé par Pierre Cauchois.

Nous avons donc créé deux paramètres dans notre fichier de ressources : un pour l'url de l'application google maps, et un deuxième pour la clé nécessaire à la connexion à cette application.

Pour l'url, nous avons mis le paramètre GoogleMapsBaseUrl avec la valeur suivante : http://maps.google.com/staticmap? (avec le point d'interrogation)

Pour la clé, nous sommes allés sur ce site, et en bas, nous avons rempli l'url par http://localhost .
Google nous a retourné une clé que nous avons ajouté comme valeur d'un paramètre que nous avons nommé GoogleMapsApiKey.

Puis, pour faire la requête auprès de google, nous avons utilisé le code suivant :
Bitmap myMap = null;
#region Construction des arguments de l'URL
StringBuilder args = new StringBuilder();
args.Append("center=" + lat + "," + lng);
args.Append("&zoom=12");
args.Append("&size=" + 480 + "x" + 380);
args.Append("&format=png");
args.Append("&maptype=mobile");
args.Append("&markers=" + lat + "," + lng + "," + "blue");
args.Append("&key=" + Properties.Resources.GoogleMapsApiKey);
args.Append("&sensor=false");
#endregion
try
{
WebRequest myRequest = WebRequest.Create(Properties.Resources.GoogleMapsBaseUrl + args.ToString());
WebResponse myResponse = myRequest.GetResponse();
myMap = new Bitmap(myResponse.GetResponseStream());
myResponse.Close();
}
catch (WebException ex)
{
MessageBox.Show(ex.Message);
}


Ce code nous permet de passer les coordonnées à google qui nous retourne la carte correspondante. Nous pouvons alors utiliser cette carte pour l'afficher à l'utilisateur.

vendredi 22 janvier 2010

Créer un installeur pour portable

Un des enjeux du projet est de permettre à des utilisateurs de télécharger et d'installer l'application sur leur téléphone pour pouvoir l'utiliser.

Nous allons donc créer un fichier .cab, qui installera l'application et qui créera un raccourci dans les programmes.

Pour cela, il faut tout d'abord créer un nouveau projet qui est intégré dans la solution.

Sur la solution : clic droit -> nouveau projet
Dans les types de projet (partie gauche de la fenêtre qui s'ouvre), choisir "Autres types de projet" puis "Configuration et déploiement". Dans la partie gauche, choisir "Projet CAB Smart Device". Nommer le projet et valider.

Faire ensuite un clic droit sur le projet créé et choisir "Ajouter" et "Sortie de projet..." et choisir le projet SmartDevice développé.

Voila l'installateur prêt, il ne nous reste plus qu'à créer le raccourci. Pour cela, il faut afficher le système de fichiers du projet cab (s'il n'est pas affiché, clic droit sur le projet, "Affichage", "Système de fichiers")
Dans la partie gauche de cette nouvelle interface, clic droit sur "Système de fichiers de l'ordinateur cible", "Ajouter un dossier spécial", "Dossier Programmes".
Cliquer sur le dossier créé, et faire un clic droit dans la partie droite de l'interface. Choisir "Créér un raccourci". Une fenêtre s'ouvre. Chercher le programme dans Dossier d'applications et la valider. Renommer le raccourci. Voila le raccourci prêt. Il ne reste plus qu'à créer le .cab et à l'installer sur le téléphone.

Il est évidemment possible de modifier d'autres options de l'installateur, telles que les clés de registre.