毕加索无法加载谷歌静态地图。

5

我正在尝试使用以下URL加载静态地图:

http://maps.googleapis.com/maps/api/staticmap?center=43.137022,13.067162&zoom=16&size=600x400&maptype=roadmap&sensor=true&markers=color:blue|43.137022,13.067162

我正在使用Square的Picasso进行操作,但是它无法加载。通过一些测试,我得出结论,竖线符号|是使Picasso出现问题的符号。你有什么办法可以解决这个问题吗?

1
你尝试过手动对该管道字符进行URL转义吗? - CommonsWare
类似于 | 转义为 \| - David Corsalini
1
不,| 的 URL 编码版本是 %7C:http://www.w3schools.com/tags/ref_urlencode.asp - CommonsWare
1个回答

5

Picasso似乎期望URL编码的URL。这意味着表单变量的值需要进行URL编码,就像提交HTML表单一样。

字母数字字符不需要转义,这就是为什么您的大多数URL都没问题。然而,“markers”参数包含特殊字符,特别是那个“|”,需要转换为URL编码值。

如果您通过程序逐步生成URL,您可以使用URLEncoder和encode()来处理此转换。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接