android4.4或4.4以下的手机接口get请求不到数据,服务返回400,post出现乱码

最近封装一个接口,需要通过Edittext拿到文本数据,作为字符串参数请求服务器。由于使用的是get请求,所以字符串是加到链接上的。在手里的测试机上都能调通接口,但是在android4.4手机上会出现异常。

找了个4.4的测试机经过排除吧,发现字符参数要通过UrlEncode转码成utf-8,具体方法:

public static String toURLEncoded(String paramString) {
    if (paramString == null || paramString.equals("")) {
        return "";
    }

    try
    {
        String str = new String(paramString.getBytes(), "UTF-8");
        str = URLEncoder.encode(str, "UTF-8");
        return str;
    }
    catch (Exception localException)
    {

    }

    return "";
}

由于是get请求,会直接返回400,bad request;如果是post请求,应该是会出现乱码的。这个问题很早之前会注意,低版本手机在取textview或者edittext里面的文本,还有传入字符串数据,需要做转码处理。

你可能感兴趣的:(android4.4或4.4以下的手机接口get请求不到数据,服务返回400,post出现乱码)