具体场景,当输入“A&B”之后搜索,发现搜索的String变样了,“A&B” 变成了 “A%26B”,如下图所示
看日志的话能发现报了:URISyntaxException: Illegal character in query at index。这个错误的原因就是字符串里存在没编码的特殊字符。
解决方案: 对于这样有特殊符号的字符串,要对存在特殊字符的部分重新进行utf-8编码
//v.text.toString的部分就是搜索的字符串
java.net.URLEncoder.encode(v.text.toString(), "utf-8" )