Propriété de Albiri Sigue
customer 27921 at Fri Mar 11 19:19:45 +0100 2011
Chapitre 22
Communiquer via Internet 237
ici que les extraits de code en rapport avec ce chapitre ; les sources complets sont disponibles
dans les exemples fournis avec ce livre 1 .
Pour rendre tout ceci un peu plus intéressant, nous utilisons les services de localisation
d’Android pour déterminer notre emplacement actuel. Les détails de fonctionnement de ce
service sont décrits au Chapitre 33.
Lorsqu’un emplacement a été trouvé – soit au lancement, soit parce que nous avons bougé
–, nous récupérons les données de Google Weather via la méthode updateForecast() :
private void updateForecast(Location loc) {
String url = String.format(format, ""
+ (int) (loc.getLatitude() * 1000000), ""
+ (int) (loc.getLongitude() * 1000000));
HttpGet getMethod = new HttpGet(url);
try {
ResponseHandler responseHandler =
new BasicResponseHandler();
String responseBody = client.execute(getMethod,
responseHandler);
buildForecasts(responseBody);
String page = generatePage();
browser.loadDataWithBaseURL(null, page, "text/html",
"UTF-8", null);
} catch (Throwable t) {
Toast.makeText(this, "La requete a echouee: " +
t.toString(), 4000).show();
}
}
}
La méthode updateForecast() prend un objet Location en paramètre, obtenu via le
processus de mise à jour de la localisation. Pour l’instant, il suffit de savoir que Location
dispose des méthodes getLatitude() et getLongitude(), qui renvoient, respectivement,
la latitude et la longitude.
L’URL Google Weather est stockée dans une ressource chaîne à laquelle nous ajoutons en
cours d’exécution la latitude et la longitude. Nous construisons un objet HttpGet avec
cette URL (l’objet HttpClient a été créé dans onCreate()) puis nous exécutons cette
méthode. À partir de la réponse XML, nous construisons la page HTML des prévisions que
nous transmettons au widget WebKit. Si l’objet HttpClient échoue avec une exception,
nous indiquons l’erreur à l’aide d’un toast.
1. Reportez-vous à la page dédiée à cet ouvrage sur le site www.pearson.fr.
Livre Android.book Page 237 Dimanche, 8. novembre 2009 12:23 12
customer 27921 at Fri Mar 11 19:19:45 +0100 2011
Chapitre 22
Communiquer via Internet 237
ici que les extraits de code en rapport avec ce chapitre ; les sources complets sont disponibles
dans les exemples fournis avec ce livre 1 .
Pour rendre tout ceci un peu plus intéressant, nous utilisons les services de localisation
d’Android pour déterminer notre emplacement actuel. Les détails de fonctionnement de ce
service sont décrits au Chapitre 33.
Lorsqu’un emplacement a été trouvé – soit au lancement, soit parce que nous avons bougé
–, nous récupérons les données de Google Weather via la méthode updateForecast() :
private void updateForecast(Location loc) {
String url = String.format(format, ""
+ (int) (loc.getLatitude() * 1000000), ""
+ (int) (loc.getLongitude() * 1000000));
HttpGet getMethod = new HttpGet(url);
try {
ResponseHandler
new BasicResponseHandler();
String responseBody = client.execute(getMethod,
responseHandler);
buildForecasts(responseBody);
String page = generatePage();
browser.loadDataWithBaseURL(null, page, "text/html",
"UTF-8", null);
} catch (Throwable t) {
Toast.makeText(this, "La requete a echouee: " +
t.toString(), 4000).show();
}
}
}
La méthode updateForecast() prend un objet Location en paramètre, obtenu via le
processus de mise à jour de la localisation. Pour l’instant, il suffit de savoir que Location
dispose des méthodes getLatitude() et getLongitude(), qui renvoient, respectivement,
la latitude et la longitude.
L’URL Google Weather est stockée dans une ressource chaîne à laquelle nous ajoutons en
cours d’exécution la latitude et la longitude. Nous construisons un objet HttpGet avec
cette URL (l’objet HttpClient a été créé dans onCreate()) puis nous exécutons cette
méthode. À partir de la réponse XML, nous construisons la page HTML des prévisions que
nous transmettons au widget WebKit. Si l’objet HttpClient échoue avec une exception,
nous indiquons l’erreur à l’aide d’un toast.
1. Reportez-vous à la page dédiée à cet ouvrage sur le site www.pearson.fr.
Livre Android.book Page 237 Dimanche, 8. novembre 2009 12:23 12
