android工具类Z

public class Utils {
//接口回调
public interface Callback {
void onsuccess(T t);
}

//AsyncTask处理
@SuppressLint("StaticFieldLeak")
public void getResult(final String s, final Class clazz, final Callback callback) {
    new AsyncTask<String, Void, Object>() {
        @Override
        protected Object doInBackground(String... strings) {

            return getResult(strings[0], clazz);
        }

        @Override
        protected void onPostExecute(Object o) {
            super.onPostExecute(o);
            callback.onsuccess(s);
        }
    }.execute(s);
}

//泛型集合
public <T> T getResult(String string, Class clazz) {
    return (T) new Gson().fromJson(getResult(string), clazz);
}

private String getResult(String string) {
    String result = "";
    try {
        URL url = new URL(string);
        HttpURLConnection connection = (HttpURLConnection) url.openConnection();
        connection.setRequestMethod("GET");
        connection.setConnectTimeout(5000);
        connection.setReadTimeout(5000);
        int responseCode = connection.getResponseCode();
        if (responseCode == 200) {
            result = Stream2String(connection.getInputStream());
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
    return result;
}

private String Stream2String(InputStream inputStream) throws IOException {
    StringBuilder builder = new StringBuilder();
    BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream));
    for (String tmp = bufferedReader.readLine(); tmp != null; tmp = bufferedReader.readLine()) {
        builder.append(tmp);
    }
    return builder.toString();
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值