urlConnection的网络访问
来源:互联网 发布:matlab 声明一个数组 编辑:程序博客网 时间:2024/05/22 05:17
public class MainActivity extends AppCompatActivity { private ListView lv; private List<Bitmap> bitmaps; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); lv = (ListView) findViewById(R.id.lv); //子线程中获取数据 new Thread(){ @Override public void run() { super.run(); bitmaps = getlist_item(); } }.start(); //给listview设置适配器 lv.setAdapter(new BaseAdapter() { @Override public int getCount() { //listview长度 return bitmaps.size(); } @Override public Object getItem(int i) { return null; } @Override public long getItemId(int i) { return 0; } @Override public View getView(int i, View view, ViewGroup viewGroup) { if (view == null){ view = View.inflate(MainActivity.this,R.layout.list_item,null); } //找到控件,插入数据 ImageView iv = (ImageView) view.findViewById(R.id.iv); iv.setImageBitmap(bitmaps.get(i)); return view; } }); } public List<Bitmap> getlist_item() { List<Bitmap> Bitmaplist = new ArrayList<Bitmap>(); try { //获取网址(当前为其他网址可以使用)//网址有问题无法访问(可直接访问不可以用代码访问) URL url = new URL("http://api.expoon.com/AppNews/getNewsList/type/1/p/1"); //获取urlConnection HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection(); //使用urlConnection获取状态码 int responseCode = urlConnection.getResponseCode(); //判断状态是否成功链接 if (responseCode == 200){ //获取获取到InputStream流 InputStream inputStream = urlConnection.getInputStream(); //使用BufferedReader读取网页中的信息 BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream)); //获取BufferedReader,用来得到json字符串 StringBuffer stringBuffer = new StringBuffer(); String line; //循环读取存储到StringBuffer中 while((line = reader.readLine()) != null){ Log.e("getlist_item: ",line ); //json字符串 stringBuffer.append(line); } //获取gson Gson gson = new Gson(); //将json串转换成Java对象 JavaBean javaBean = gson.fromJson(stringBuffer.toString(), JavaBean.class); //循环读取Java对象中的信息 for (int i=0;i<javaBean.getData().getPc_feed_focus().size();i++){ //获得图片地址 String image_url = javaBean.getData().getPc_feed_focus().get(i).getImage_url(); URL imgurl = new URL("http:"+image_url); //获取urlConnection HttpURLConnection imgurlConnection = (HttpURLConnection) imgurl.openConnection(); //使用urlConnection获取状态码 int imgresponseCode = imgurlConnection.getResponseCode(); //判断是否成功连接 if (imgresponseCode == 200){ //获取获取到InputStream流 InputStream inputStream1 = imgurlConnection.getInputStream(); //使用BitmapFactory来处理得到图片 Bitmap bitmap = BitmapFactory.decodeStream(inputStream1); //放入图片集合 Bitmaplist.add(bitmap); } } }else { } //返回集合 return Bitmaplist; } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return null; }}
阅读全文
1 0
- urlConnection的网络访问
- urlConnection的网络访问
- 网络访问-URLCONNECTION
- 通过URLConnection的方式访问WebService
- Android网络编程之URLConnection和HttpClient访问服务器
- Java网络连接-URLConnection类的使用
- 网络通信编程URLConnection的基础知识
- java 代理访问 URLConnection
- (java)urlconnection访问ContentEncoding为gzip的网页
- (java)urlconnection访问ContentEncoding为gzip的网页
- 网络编程--URL,URLConnection
- URLConnection &HttpURLConnection 网络请求
- android网络之URLconnection
- 使用URLConnection自动下载网络上的文章内容
- Java网络编程实践和总结 --- URLConnection的学习
- Android网络编程中的URLConnection的IP设定
- URLConnection的post请求网络数据和AsyncTask异步线程
- 用URLConnection来实现简单的java网络爬虫
- JAVA实践-maven中如何导入jstl包
- python 创建读写目录,文件
- web渗透—工具burpsuit的使用
- Android 项目更换头像(拍照和选择相册)
- java lastIndexOf以及substring 方法笔记
- urlConnection的网络访问
- DotNet 资源大全中文版(Awesome最新版)
- VS2015+Qt程序运行与发布
- adb操作命令详解及大全
- 字典排序问题——在value的基础上对key排序
- 表格内容位置原则
- windows2003中未分页内存泄漏导致服务器不稳定的解决方法
- unsigned int reverse_bit(unsigned int value);这个函数的返回 值value的二进制位模式从左到右翻转后的值。
- 数据结构实验三