IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Phone .NET Discussion :

comment intégrer le service bing maps dans mon application


Sujet :

Windows Phone .NET

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2011
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Avril 2011
    Messages : 53
    Points : 39
    Points
    39
    Par défaut comment intégrer le service bing maps dans mon application
    Bonjour tout le monde
    je suis en train de développer ma première application sur wp7
    parmi les fonctionnalités que mon app doit offrir c'est de montrer l'adresse de rendez-vous sur une carte GPS
    j'ai vue quelques tutos qui montrent l'utilisation de l'API bing maps pour windows phone mais j'aimerai savoir comment le paramétrer pour prendre en entrée l'adresse saisie par l'utilisateur.
    merci pour votre compréhension

  2. #2
    Expert éminent sénior
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Points : 13 380
    Points
    13 380
    Par défaut
    D'abord il faut que tu récupères une clé
    http://msdn.microsoft.com/en-us/library/ff428642.aspx

    Ensuite il faut utiliser le service de VirtualEarth qui transforme des adresses en coordonnées.
    http://dev.virtualearth.net/webservi...odeservice.svc

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2011
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Avril 2011
    Messages : 53
    Points : 39
    Points
    39
    Par défaut
    Mercii Bien pour votre réponse
    Bon, j'ai crée un compte et un clé pour mon application
    j'ai trouvé un tuto qui m'a aidé d'avancée : http://programming4.us/mobile/3478.aspx
    lui aussi utilise le service de VirtualEarth
    j'ai terminé tous les étapes mais lors de compilation j'ai eu l'erreur suivante

    An endpoint configuration section for contract 'BingMapGeoCodeService.IGeocodeService' could not be loaded because more than one endpoint configuration for that contract was found. Please indicate the preferred endpoint configuration section by name.
    ce message d'erreur s'intervient sur ce constructeur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public GeocodeServiceClient()
            {
     
            }
    malgré qu'il ya d'autre constructeur paramétré dans la page Réferance.cs

    !!! j’espère que vous m'aidé de trouver une solution simple
    Merciiii d'avance pour votre aide )))

  4. #4
    Expert éminent sénior
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Points : 13 380
    Points
    13 380
    Par défaut
    Il me semble que c'est plus une erreur d'execution que de compilation non ?

    En fait il faut que tu ailles voir dans le fichier ServicesReference.ClientConfig, la tu prends soit le nom du basicHttpBinding (la valeur dans name="") soit celui du customBinding (ca change rien) et tu le passes en parametre du constructeur quand tu instancies ton GeocodeServiceClient.

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2011
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Avril 2011
    Messages : 53
    Points : 39
    Points
    39
    Par défaut
    j'ai essayé d'appliquer votre proposition mais dans l'instance de la classe GeocodeServiceClient le paramétre (string a) indique une erreur
    voila mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
        public partial class MainPage : PhoneApplicationPage
        {
     
            GeocodeServiceClient  _svc;
     
            public MainPage()
            {
                // la variable a contient la valeur name de basicHttpBinding dans le fichier ServicesReference.ClientConfig.
     
                string a = "BasicHttpBinding_IGeocodeService";
     
                InitializeComponent();
     
                //j'ai choisie le 2éme type de constructeur qui a comme paramétre un string.
                _svc = new GeocodeServiceClient(string a);
     
                 _svc.GeocodeCompleted += (s, e) =>
                     {
                         var geoResult = (from r in e.Result.Results
                                          orderby (int)r.Confidence ascending
                                          select r).FirstOrDefault();
                         if (geoResult != null)
                         {
                             this.SetLocation(geoResult.Locations[0].Latitude,
                                 geoResult.Locations[0].Longitude,
                                 10,
                                 true);
                         }
                     };
     
            }
    peut étre que j'arrive pas a l'instancier je sais pas pour koi il n'accepte pas ce paramétre malgré que j'ai un constructeur paramétré !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    public GeocodeServiceClient(string BasicHttpBinding_IGeocodeService) :
                base(BasicHttpBinding_IGeocodeService) {
            }

  6. #6
    Expert éminent sénior
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Points : 13 380
    Points
    13 380
    Par défaut
    Et c'est quoi l'erreur ?

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2011
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Avril 2011
    Messages : 53
    Points : 39
    Points
    39
    Par défaut
    y'a pas une erreur mais Apres la compilation rien ne s'affiche sur l'emulateur
    voila mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    GeocodeServiceClient client = new GeocodeServiceClient("BasicHttpBinding_IGeocodeService");

  8. #8
    Expert éminent sénior
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Points : 13 380
    Points
    13 380
    Par défaut
    Ben c'est ton code qui est mauvais alors.

    Mets des break points et regarde ou tu passes.
    Ta methode SetLocation elle fait quoi ?

  9. #9
    Nouveau membre du Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2011
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Avril 2011
    Messages : 53
    Points : 39
    Points
    39
    Par défaut
    elle va tracer l'emplacement sur ​​le contrôle Bing Maps.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
      private void SetLocation(double latitude, double longitude,double zoomLevel, bool showLocator)
            {
                Microsoft.Phone.Controls.Maps.Platform.Location location = new Microsoft.Phone.Controls.Maps.Platform.Location();
                location.Latitude = latitude;
                location.Longitude = longitude;
                bingMap.SetView(location, zoomLevel);
                bingMapLocator.Location = location;
                if (showLocator)
                {
                    locator.Visibility = Visibility.Visible;
                }
                else
                {
                    locator.Visibility = Visibility.Collapsed;
                }
            }

  10. #10
    Nouveau membre du Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2011
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Avril 2011
    Messages : 53
    Points : 39
    Points
    39
    Par défaut
    Enfin ça marcher !!
    le problème c'est que je n'ai pas utilisé l'event EventHandler
    voila le code final pour instancier la calss GeocodeServiceClient

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    GeocodeServiceClient geocodeService = new GeocodeServiceClient("BasicHttpBinding_IGeocodeService");
                    geocodeService.GeocodeCompleted += new EventHandler<GeocodeCompletedEventArgs>(GeocodeCompleted);
                    geocodeService.GeocodeAsync(geocodeRequest);
    Merci Bien Skyounet

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 12/10/2014, 03h53
  2. Insertion google map dans mon application
    Par khnesi dans le forum Windev Mobile
    Réponses: 3
    Dernier message: 03/07/2014, 17h44
  3. [EJB3.1] Comment intégrer le conteneur d'EJB dans mon application web
    Par geforce dans le forum Java EE
    Réponses: 1
    Dernier message: 24/02/2013, 05h10
  4. Intégrer Google Maps dans mon application
    Par ti7bo7 dans le forum Interfaces Graphiques en Java
    Réponses: 2
    Dernier message: 24/08/2012, 17h27
  5. Réponses: 2
    Dernier message: 29/02/2008, 11h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo