
考虑使用以下android应用程序代码;
private String Getdistance(String src, String dest) { StringBuilder urlString = new StringBuilder(); urlString.append("http://maps.GoogleAPIs.com/maps/API/distancematrix/Json?"); urlString.append("origins="); // **"ÇANKIRI,ÇERKEŞ,TURKEY"** urlString.append(src); urlString.append("&destinations="); // **"ANKara,ALTINDAĞ,TURKEY"** urlString.append(dest); urlString.append("&mode=driving&sensor=false"); Log.d("xxx","URL="+urlString.toString()); // get the JsON And parse it to get the directions data. httpURLConnection urlConnection= null; URL url = null; //String urlStr = URLEncoder.encode(urlString.toString(), "utf-8"); //url = new URL(urlStr); url = new URL(urlString.toString()); ......如果src和dest字符串具有Unicode字符,则Google距离矩阵服务将失败(状态返回为NOT_FOUND).但是,如果我在网络浏览器中使用Google地图站点中的字符串,它将返回良好的结果.我也尝试使用URLEncoder,但是我也失败了.
你有什么建议吗?
解决方法:
您应该使用URLEncoder.encode,
例
urlString.append(URLEncoder.encode(dest, "utf-8"));编辑:别忘了您应该仅将其用于参数,而不是整个url.
总结以上是内存溢出为你收集整理的android-HttpURLConnection上的URL字符串全部内容,希望文章能够帮你解决android-HttpURLConnection上的URL字符串所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)