import android.os.AsyncTask;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ListView;
import com.google.gson.Gson;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.util.EntityUtils;
import java.io.IOException;
public class MainActivity extends AppCompatActivity {
private ListView listView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listView = findViewById(R.id.lv);
MyTask myTask=new MyTask();
myTask.execute("http://api.tianapi.com/nba/?key=48a7d7193e11bd2dd4a683b6e2f90a4f&num=30");
}
class MyTask extends AsyncTask<String,Void,String>{
@Override
protected String doInBackground(String... strings) {
//1.创建一个HttpClient对象--添加apha依赖库 /useLibrary 'org.apache.http.legacy'
HttpClient httpClient=new DefaultHttpClient();
//2.确定请求方式
HttpGet httpGet=new HttpGet(strings[0]);
//3.执行请求
try {
HttpResponse response = httpClient.execute(httpGet);
//4.判断响应码
int statusCode = response.getStatusLine().getStatusCode();
if(statusCode==200){
//5.获取数据
HttpEntity entity = response.getEntity();
//将实体对象转换成String字符串
String s = EntityUtils.toString(entity);
return s;
}
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
@Override
protected void onPostExecute(String s) {
super.onPostExecute(s);
if(s!=null){
//解析,显示
Gson gson=new Gson();
ResultData resultData = gson.fromJson(s, ResultData.class);
MyAdapter adapter=new MyAdapter(MainActivity.this,resultData.getNewslist());
listView.setAdapter(adapter);
}
}
@Override
protected void onPreExecute() {
super.onPreExecute();
}
}
}