private List lvData=new ArrayList<>();
private Handler myHandler=new Handler(){
@Override
public void handleMessage(Message msg) {
//得到数据
Result data=(Result) msg.obj;
List
private ListView listView;
Boolean result=NetTypeUtils.isConn(MainActivity.this);
if(result == true){
Log.d(“ZZZ”,”+++result=:+++”+result);
//进行数据请求
try {
new MyTask().execute(“”);
} catch (Exception e) {
e.printStackTrace();
}
}else{
NetTypeUtils.openNetSettingDg(MainActivity.this);
}
—————————————————————-
class MyGetData extends Thread{
@Override
public void run() {
try {
//1.创建URL
URL url=new URL("https://suggest.taobao.com/sug?code=utf-8&q=%E6%89%8B%E6%9C%BA");
//2.得到HttpUrlCoonection
HttpURLConnection connection=(HttpURLConnection) url.openConnection();
//3.设置
connection.setRequestMethod("GET");
connection.setConnectTimeout(10000);
connection.setReadTimeout(10000);
//4.获取返回码
int code=connection.getResponseCode();
if(code==200){
//5.得到结果
InputStream stream=connection.getInputStream();
//将流转换成字符串
String jsonStr=streamToString(stream);
//进行解析
Gson gson=new Gson();
Result result=gson.fromJson(jsonStr,Result.class);
//发送消息给主线程
Message msg=Message.obtain();
msg.obj=result;
myHandler.sendMessage(msg)
}
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
/**
* 将一个输入流转换成一个字符串
* @param stream
* @return
*/
public String streamToString(InputStream stream){
ByteArrayOutputStream outputStream=new ByteArrayOutputStream();
try {
byte[] bytes=new byte[1024];
int len=0;
while ((len=stream.read(bytes))!=-1){
outputStream.write(bytes,0,len);
}
outputStream.flush();
outputStream.close();
stream.close();
} catch (IOException e) {
e.printStackTrace();
}
return outputStream.toString();
}