Bonjour,

Je suis en train de faire une application Android de géolocalisation.

Mes données (latitude, longitude, ...) sont dans une base de données MySQL et là je suis teste en local avant de l'héberger.

Problème: Le graphique + récupération base de données

Voici L'interface que je veux avoir ( photo faite avec Paint ) :



Mais pour le moment je suis arrivé à faire cette interface qui ne marche pas vraiment car elle affiche que la première valeur de la latitude et longitude.



Voici le Code PHP:
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
<?php
    &nbsp;&nbsp;&nbsp;&nbsp;
    $base = mysql_connect ('localhost', 'root', '');  
    mysql_select_db ('trackeur', $base) ;  
 
    $p=0;
    $req = mysql_query("select * from clients WHERE username = 'roger'");
    while($dnn = mysql_fetch_array($req))
    {
        $v="A";
        $IMEI = $dnn['IMEI'];
        $req1 = mysql_query("select * from data WHERE IMEI = '$IMEI' AND GPSF='$v' ORDER BY id DESC  LIMIT 1");
        while($row = mysql_fetch_array($req1))
        {   
            $output[]=$row;    
        } 
        //on encode en JSON 
        print(json_encode($output));
        mysql_free_result ($req1);  
    }
?>
Et voici le Code Java
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
package com.exemple.ville;
 
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
 
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
 
 
import android.app.ListActivity;
import android.location.Address;
import android.location.Geocoder;
import android.net.ParseException;
import android.os.Bundle;
import android.util.Log;
import android.widget.ArrayAdapter;
import android.widget.TextView;
import android.widget.Toast;
 
public class ville extends ListActivity {
 
     /** Called when the activity is first created. */
     @Override
     public void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         //setContentView(R.layout.main);
         String result = null;
      InputStream is = null;
      JSONObject json_data=null;
      ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
      ArrayList<String> donnees = new ArrayList<String>();
      ArrayList<String> r = new ArrayList<String>();
      try{
     //commandes httpClient
      HttpClient httpclient = new DefaultHttpClient();
         HttpPost httppost = new HttpPost("http://10.0.2.2/member.php");
         httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
         HttpResponse response = httpclient.execute(httppost);
         HttpEntity entity = response.getEntity();
         is = entity.getContent();
      }
      catch(Exception e){
       Log.i("taghttppost",""+e.toString());
             Toast.makeText(getBaseContext(),e.toString() ,Toast.LENGTH_LONG).show();
        }
 
      //conversion de la réponse en chaine de caractère
         try
         {
          BufferedReader reader = new BufferedReader(new InputStreamReader(is,"UTF-8"));
 
          StringBuilder sb  = new StringBuilder();
 
          String line = null;
 
          while ((line = reader.readLine()) != null) 
          {
          sb.append(line + "\n");
          }
 
          is.close();
 
          result = sb.toString();
         }
         catch(Exception e)
         {
          Log.i("tagconvertstr",""+e.toString());
         }
         //recuperation des donnees json
         try{
           JSONArray jArray = new JSONArray(result);
 
              for(int i=0;i<jArray.length();i++)
              {
 
                    json_data = jArray.getJSONObject(i);
                    double a=Double.valueOf(json_data.getString("Longitude")).doubleValue();
                    a=a/100;
                    String longitude=String.valueOf(a);
                    donnees.add(longitude);
                    double b=Double.valueOf(json_data.getString("Latitude")).doubleValue();
                    b=b/100;
                    String latitude=String.valueOf(b);
                    donnees.add(latitude);
 
 
                    //r.add(json_data.getString("categorie"));
 
                }
                 setListAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_expandable_list_item_1, donnees));
 
            }
             catch(JSONException e){
              Log.i("tagjsonexp",""+e.toString());
             } catch (ParseException e) {
              Log.i("tagjsonpars",""+e.toString());
        }
 
     }
 }
Quelqu'un saurait-il m'indiquer comment procéder ?

Merci d'avance pour votre aide.