连网获取图片的小程序
这些文件实际存放在电脑的硬盘上,通过tomcat已经做好了映射:参考
1 package net.blogjava.mobile; 2 3 import java.io.BufferedReader; 4 import java.io.InputStream; 5 import java.io.InputStreamReader; 6 import java.net.URL; 7 import java.net.URLConnection; 8 import java.util.ArrayList; 9 import java.util.List; 10 11 import android.app.ListActivity; 12 import android.content.Context; 13 import android.content.Intent; 14 import android.graphics.Bitmap; 15 import android.graphics.BitmapFactory; 16 import android.os.Bundle; 17 import android.util.Log; 18 import android.view.LayoutInflater; 19 import android.view.Menu; 20 import android.view.MenuInflater; 21 import android.view.MenuItem; 22 import android.view.View; 23 import android.view.ViewGroup; 24 import android.widget.BaseAdapter; 25 import android.widget.ImageView; 26 import android.widget.LinearLayout; 27 import android.widget.RatingBar; 28 import android.widget.TextView; 29 30 public class Main extends ListActivity 31 { 32 33 34 @Override 35 public boolean onCreateOptionsMenu(Menu menu) { 36 37 38 MenuInflater inflater = getMenuInflater(); 39 inflater.inflate(R.menu.menu, menu);//调用第二步中定义的Menu界面描述文件 40 return true; 41 42 } 43 44 45 @Override 46 public boolean onOptionsItemSelected(MenuItem item) { 47 // TODO Auto-generated method stub 48 Intent intent = new Intent(Main.this, Main.class); 49 startActivity(intent); 50 //close this activity 51 finish(); 52 return true; 53 } 54 55 56 public class ApkListAdapter extends BaseAdapter 57 { 58 private Context context; 59 private LayoutInflater layoutInflater; 60 private String inflater = Context.LAYOUT_INFLATER_SERVICE; 61 private String rootUrl = "http://192.168.43.62/apk/"; 62 private String listUrl = rootUrl + "list.txt"; 63 private List<ImageData> imageDataList = new ArrayList<ImageData>(); 64 65 class ImageData 66 { 67 public String url; 68 public String applicationName; 69 public float rating; 70 } 71 72 private InputStream getNetInputStream(String urlStr) 73 { 74 try 75 { 76 URL url = new URL(urlStr); 77 URLConnection conn = url.openConnection(); 78 conn.connect(); 79 InputStream is = conn.getInputStream(); 80 return is; 81 } 82 catch (Exception e) 83 { 84 85 } 86 return null; 87 } 88 89 public ApkListAdapter(Context context) 90 { 91 this.context = context; 92 layoutInflater = (LayoutInflater) context 93 .getSystemService(inflater); 94 try 95 { 96 InputStream is = getNetInputStream(listUrl); 97 InputStreamReader isr = new InputStreamReader(is, "GBK"); 98 BufferedReader br = new BufferedReader(isr); 99 String s = null; 100 while ((s = br.readLine()) != null) 101 { 102 String[] data = s.split(","); 103 if (data.length > 2) 104 { 105 ImageData imageData = new ImageData(); 106 imageData.url = data[0]; 107 Log.d("aa", imageData.url); 108 imageData.applicationName = data[1]; 109 imageData.rating = Float.parseFloat(data[2]); 110 imageDataList.add(imageData); 111 } 112 } 113 is.close(); 114 } 115 catch (Exception e) 116 { 117 // TODO: handle exception 118 } 119 } 120 121 @Override 122 public int getCount() 123 { 124 return imageDataList.size(); 125 } 126 127 @Override 128 public Object getItem(int position) 129 { 130 return position; 131 } 132 133 @Override 134 public long getItemId(int position) 135 { 136 return position; 137 } 138 139 @Override 140 public View getView(int position, View convertView, ViewGroup parent) 141 { 142 LinearLayout linearLayout = (LinearLayout) layoutInflater.inflate( 143 R.layout.item, null); 144 ImageView ivLogo = (ImageView) linearLayout 145 .findViewById(R.id.ivLogo); 146 147 TextView tvApplicationName = ((TextView) linearLayout 148 .findViewById(R.id.tvApplicationName)); 149 150 TextView tvRating = (TextView) linearLayout 151 .findViewById(R.id.tvRating); 152 RatingBar ratingBar = (RatingBar) linearLayout 153 .findViewById(R.id.ratingbar); 154 155 tvApplicationName 156 .setText(imageDataList.get(position).applicationName); 157 tvRating 158 .setText(String.valueOf(imageDataList.get(position).rating)); 159 ratingBar.setRating(imageDataList.get(position).rating); 160 161 try 162 { 163 InputStream is = getNetInputStream(rootUrl 164 + imageDataList.get(position).url); 165 Bitmap bitmap = BitmapFactory.decodeStream(is); 166 is.close(); 167 ivLogo.setImageBitmap(bitmap); 168 } 169 catch (Exception e) 170 { 171 } 172 173 return linearLayout; 174 } 175 } 176 177 @Override 178 public void onCreate(Bundle savedInstanceState) 179 { 180 super.onCreate(savedInstanceState); 181 ApkListAdapter apkListAdapter = new ApkListAdapter(this); 182 setListAdapter(apkListAdapter); 183 184 } 185 }
要想实现最终的功能,手机和电脑必须在同一个内网上,手机建立热点,电脑连上。
最终效果:
源码传送门
在台式机上发现
http://219.245.64.92:8080/apk/ 本机IP
http://219.245.64.1:8080/apk/ 都能找到
哈哈,发现最终可能是师兄留下的,原来别人早已干过,惭愧!
转载于:https://www.cnblogs.com/hixin/p/4385680.html
连网获取图片的小程序相关推荐
- 小程序之 保存canvas生成商品图片附加小程序二维码 分享到朋友圈
小程序之 保存canvas生成商品图片附加小程序二维码 分享到朋友圈 一.概述 需要用到的生成二维码组件(可自行下载添加到小程序根目录utils里):https://github.com/demi52 ...
- exe文件解包_如何获取别人微信小程序的源文件?
如何获取别人微信小程序的源文件? ·简单聊一下 xxxxx.wxapkg 小程序的源文件存放在哪?(当然是在微信的服务器上) ·但是在微信服务器上,用户想要获取到,肯定是十分困难的,有没有别的办法呢? ...
- 只需两步获取任何微信小程序源码
只需两步获取任何微信小程序源码 kedwan关注 12018.09.15 09:32:43字数 2,428阅读 3,946 转载自百家号作者:不忘初心lucy 第一次在掘金这样高大上的社区写文章,忐忑 ...
- 小程序获取form_id 与 小程序获取openid
小程序获取form_id **介绍:**小程序的 from_id 要在用户发生操作的时候才能产生,所以我们可以用以下方法来做 直接上代码 wxml <form bindsubmit=" ...
- 多功能照片图片处理器小程序源码_支持流量主
简介: 多功能照片图片处理器小程序功能还不错,免除服务器和域名即可搭建,特别的简单好上手. 一键化功能支持: 人脸融合(人脸融合,两张脸融合成一张) 换底色(相当于就是给照片的底色换色,一般都是证件照 ...
- 外卖CPS小程序部署指南,个人获取美团外卖小程序跳转链接
外卖CPS小程序部署指南,个人获取美团外卖小程序跳转链接 上次利用闲暇时间弄了个外卖CPS小程序,并把代码开源出来,还是有挺多小伙伴来领取源码的.不仅有同行的人,还有跨行的人,也摸索着搞出来小程序推一 ...
- 微信小程序:图片拼图小程序源码
该款小程序支持多种流量主 另外支持多种图形模板制作切割 另外也支持长图合成等功能 安装简单,新手容易上手,具体就不多说了大家自行研究吧! 小程序源码下载地址: 微信小程序:图片拼图小程序源码-小程序文 ...
- 获取其他人微信小程序的任意路径以及生成二维码
如果想要获取别人的小程序页面路径和参数,也不是没有办法,我们只需要通过小程序平台提供的工具就可以简单的获取得到. 当然,前提是获取到目标小程序的APPID,这个应该很简单,没必要在这里阐述. 第一步, ...
- uni-app微信小程序image引入图片;background-image背景图引入图片;小程序预览本地图片;小程序图片过大引入报错;获取本地图片的网络地址;
uni-app小程序图片使用有image标签和background-image背景图两种方式: 下有获取本地图片的网络地址方式:见第四步 一.方式一:使用image标签引入: uni-app官方ima ...
最新文章
- Window环境下,Qt中文出现乱码解决办法
- 【Python】调用百度云API人脸搜索服务 Face Search
- 《炉石传说》架构设计赏析(3):Gameplay初探
- QT 之 TCP/IP 服务器和客户端(一)
- centos源码安装PHP
- sql server利用开窗函数over() 进行分组统计
- java pdf添加图片_Java 给 PDF 设置背景图片
- 【计算机图形学】【笔记】2、什么是UV
- python京东注册机_京东自动注册
- 深圳计算机学校排名2015,深圳学校排行榜Top20!深圳人挤破头都想上的小学中学大学...
- 每日一词20190316——GIS矢量数据和栅格数据对比
- word插入向上向下取整符号
- SecureCRT连接服务器报错Failed to open the host key database file解决方法
- METIS安装和使用
- 土壤湿度遥感监测 - 植被指数/地表温度与土壤湿度
- 2017年第一次专题研讨会论坛成果:自行车和城市可持续发展国际案例
- ubuntu 网卡总结
- 【证券】什么是开仓、持仓和平仓?
- UR5构型机械臂正逆运动学
- 最新IP数据库-基于国家省份城市县区和运营商-专业准确-每月发行
热门文章
- TensorFlow会话的配置项
- linux eclipse stm32,在ubuntu下利用eclipse搭建stm32开发环境和st-link调试
- vue+axios方法封装(restful,ajax)
- Java 方法使用final 修饰参数的作用
- php mkdir用户,PHP mkdir()无写权限的问题解决方法
- ROS-创建功能包和节点
- ssas从mysql获取数据库_通过AMO获取SQL Server SSAS信息
- ros下的python代码的编写与回调函数
- BootstrapTable组件冻结列
- 查看服务器内存、CPU、网络等占用情况的命令--汇总