2012-05-24 7 views
0

Je fais une application qui montre une carte Google via leur image statique api. Dans le cas où l'utilisateur a une connexion, la carte est prise avec l'URL habituelle "http://maps.google.com/maps/api/staticmap?sensor=false & center = ...". Ensuite, je l'ai mis à télécharger avec FileTransfer.download sur le fond, donc la prochaine fois que l'utilisateur vient aura la carte avec ou sans connexion. Le problème est que je peux télécharger beaucoup d'images mais pas le Google Maps, ça donne une "url invalide" et je suppose que c'est parce que toutes les conneries de l'url (beaucoup de paramètres, colons, pipes ...)phonegap cache localement google maps image statique

Ceci est une erreur par exemple:

{ "source": "http://maps.google.com/maps/api/staticmap?sensor=false & centre = 42,846452955175835, -1,9212391417618164 & zoom = 6 & size = 260x260 & marqueurs = couleur: bleu | étiquette: 1 | 42.846452955175835, -1.9212391417618164 & marqueurs = couleur: bleu | étiquette: 2 | 40.97136004517963, -5,68 2259444534338 & chemin = couleur: 0x0000ff | poids: 5 | 42.846452955175835, -1.9212391417618164 | 40.97136004517963, -5.682259444534338 "," code ":" 2 "," cible ":"/var/mobile/Applications/5773FF17-42B9-4CA0-9159 -E05462140067/Documents/com.test.images/img_place_22.jpg "}

Y at-il un moyen de gérer cela? La seule option que j'ai vu en regardant autour est de créer un proxy sur mon serveur qui gère les «jolies URL», mais ce serait beaucoup de travail d'un intermédiaire pour quelque chose d'aussi simple.

Merci!

+0

Si vous demandez à l'URL juste cette chaîne fonctionne: http://maps.google.com/maps/api/staticmap?sensor=false¢er=42.846452955175835,-1.9212391417618164&zoom=6&size=260x260&markers=color:blue|label:1|42.846452955175835,-1.9212391417618164&markers=color : bleu | label: 2 | 40.97136004517963, -5.682259444534338 & path = couleur: 0x0000ff | weight: 5 | 42.846452955175835, -1.9212391417618164 | 40.97136004517963, -5.682259444534338 – lfergon

+0

À moins que vos paramètres ne soient dynamiques, qu'en est-il de l'utilisation d'un service URL-shortner, comme goo.gl? Votre URL deviendrait http://goo.gl/EmdLm – chrisben

+0

L'url fonctionne comme un charme :) Le problème est quand cela est exécuté: ft.download (item.url, dlPath, function() {... Il se bloque en disant c'est et url invalide, très probablement en raison des caractères sur les tuyaux comme url, ... –

Répondre

0

En fait, j'eu le même problème, je l'ai résolu en ajoutant http://maps.google.com à la liste blanche d'applications (res/config.xml dans Android, * fichier .plist dans iphone je pense)

Questions connexes