该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

网络通讯查看图片。

用到了一个显示图片的控件,

稍微了解了一下发现,view的子类用backgroud都可以变相的设置图片。

ImageView显示图片用ViewImg.setImageBitmap(bitmap); 我也不知道这个方法有什么好处,但是这不是唯一的方法,接收的参数 是一个BitMap对象,这是一个位图对象,这样一个对象的好处可以用byte[] 字节数组构建。

Bitmap bitmap = BitmapFactory.decodeByteArray(dataImg, 0, dataImg.length);

安卓让我搞不懂的是很多对象都是用工厂生产出来的而不是new出来的,应该是原因和好处的,但是目前我感觉习惯性的去new 然后然后一查发现是用工厂方法生产出来的,主要是工厂方法的名字都特别长,太记,一不小心就用了名字差不多的方法。

显示图片的问题已经解决了,那么怎么从网络中读到一个图片,转成字节数组哪。

其实也很简单。

构建这么一个读取的方法,接收一个HTTP协议地址。

构建成URL url = new URL(strUil); 现在一直不是很明了的知道,URL Url Uri,貌似URL是可以放所有协议的地址,后面两个是安卓用的,uri是不带协议的地址。而且,他们的构建方法还不统一,安卓非得搞特殊用Uri.parse(); 而不是用New,因为本机上没有下载源码,所以也没进去看,但是英语很不行,估计也不是看多动,只是好奇他是怎么解析我传入的字符串。

然后获得一个连接对象,

HttpURLConnection conn = (HttpURLConnection) url.openConnection();

既然知道http类型的直接强转就行。

conn.setConnectTimeout(5000); 设置一下,延迟等待,意思就是等这个网页5s打开不成功就抛例外,

conn.setRequestMethod("GET");设置请求方式,很好理解你到底是读 还是改。这种方式很特别,这个方法本身不返回内容,下了获得命令,还得用其他命令去拿,感觉和让别人快递东西一样,给你发过来然后你还得去拿,不知道会不会和快递一样,超时不拿就把东西给反回去了,或者自己的东西被别人冒领了之类的。

conn.getResponseCode() == 200 判断一下刚才的操作是否成功了,等于200就是成功了。

然后读到的是一个输入流。到这里就好办了,把输入流的东西读出来存成字节数组里面。

InputStream instream = conn.getInputStream();

什么你不会读?

这个方法经常用,我都做成一个工具方法了。 这么经常用的方法不知道,库类本身有没有提供。

ByteArrayOutputStream outS = new ByteArrayOutputStream(); 这算是一个缓存区域把,把每次读到的数据放这里面,然后读完了一下在返回出去。感觉这东西还是必要的。

byte[] buffer = new byte[1024]; 这也是一个缓存区域....。

下面我就直接拷贝代码算了。

int len = 0; 这个是 输入流read方法的返回值,具体什么意思我不清楚,返回-1就代表输入流的数据读完了。应该返回的是剩余数据长度,或者读到数据返回1,或者....反正-1就肯定里面没数据了。

while((len = instream.read(buffer)) != -1){ 用流的read方法读数据,把存放的容器放进去,

outS.write(buffer, 0, len);然后把读到的数据全部存到二级缓存。

}

instream.close();

return outS.toByteArray(); 把里面的数据概念成字节数组返回出去。

这样就OK了。

我没学过JAVAEE,所以WEB也是 临时建的,但是注意要访问本地的地址不能用,local:8080作为访问地址,这个想想也应该知道,因为程序要在安卓手机上跑的,虽然虚拟机装在你电脑上,但是你如果填local 他会去运行的手机去找8080这个端口,所以要填本机的IP。

至于建立WEB也很简单,因为我只是往里面放一张图片。

至于WEB项目直接找到Dynamic Web project 然后创建就行了然后把你的图片丢到WebContent目录下面就可以了,其他工具创建的项目可能不一样,就是项目根目录下的一个文件夹。

项目想让别人访问,或者自己访问,意思就提供服务 这时候就需要部署到Server上了,我用的是Tomcat 7.0,也用通过这个集成开放工具把 这个算是“服务器”的东西简单架起来,然后把项目部署上去就能访问了。

想学android 但工作没多少时间学,【共勉】Android学习日志。新年刚过离开学还有时间,加油!...相关推荐

  1. android 8.1没声音,RingtonePreference无法在Android 8.1上添加新的铃声

    在xml文件中,我有以下代码.我可以通过点击ringtonepref屏幕中的广告铃声按钮来选择mp3声音,但是当我这样做时,我会看到以下异常.这曾经工作过,但更新到Android 8后它无法正常工作. ...

  2. mysql查询当前时间和用户_MySQL学习笔记(3) - 查询服务器版本,当前时间,当前用户...

    IIC驱动移植在linux3.14.78上的实现和在linux2.6.29上实现对比(deep dive) 首先说明下为什么写这篇文章,网上有许多博客也是介绍I2C驱动在linux上移植的实现,但是笔 ...

  3. 一篇文章看明白 Android PackageManagerService 工作流程

    Android - PackageMangerService 分析 相关系列 一篇文章看明白 Android 系统启动时都干了什么 一篇文章了解相见恨晚的 Android Binder 进程间通讯机制 ...

  4. python自学书籍推荐豆瓣-想学python,请问有没好的书籍推荐?

    很多人在问,学习Python读什么书,这其实是一个非常通用的问题,学习分为三种方式:看书.上课.培训,而读书学习是最实惠也是最高效的一种,下面我们推荐6本高分书籍给大家,希望大家学习愉快: 1.Pyt ...

  5. ​明知工作没前途,想辞职却又不知道做什么?

    前两天,收到了一个30多岁读者的私信留言.他的工作是辅警,合同工,觉得工作没前途,想辞职. 我跟他聊了很久,打消了他辞职的想法. 并不是说他不应该辞职,而是他不应该急着辞职. 当工作没前途看不到希望时 ...

  6. 计算机想转行金融 但是完全没经验,FRM证书如何帮助没有工作经验的人转行金融?...

    自Sherry大学毕业,已经过去多年.当年他是在某985名校学习计算机专业,出来后便在电子行业工作8年,后来又转到银行,一晃三年飞逝. 就在去年5月和11月,Sherry报名FRM网课,接连参加了金融 ...

  7. 学计算机每天都没时间,大学里“苦不堪言”的5大专业,忙到没有时间谈恋爱,学生累成狗...

    五月已经悄悄地过去了一半,高中生们也即将迎来改变命运的高考. 在高中时代,无论是家长还是老师,都会以过来人的身份告诉高中生们:熬过这三年,上了大学就轻松了.很多高中生对此深信不疑,而且对大学的生活无比 ...

  8. 学习python需要什么基础-要学Python编程,需要什么样的基础呢?想找这方面工作...

    原标题:要学Python编程,需要什么样的基础呢?想找这方面工作 作为一个初学Python的新手,如何学好这门语言,肯定经常是一头雾水. 那么,学好这门编程语言的基础是什么呢? 第一步,就是马上到网站 ...

  9. 学python要什么基础-要学Python编程,需要什么样的基础呢?想找这方面工作

    原标题:要学Python编程,需要什么样的基础呢?想找这方面工作 作为一个初学Python的新手,如何学好这门语言,肯定经常是一头雾水. 那么,学好这门编程语言的基础是什么呢? 第一步,就是马上到网站 ...

最新文章

  1. 最高 10 万奖金!2021 新网银行智能语音大赛来了!
  2. 企业网络推广期间关于网站分享功能设计有哪些细节需要加以重视?
  3. rust怎么传送坐标_德国人怎么学电机——浅谈电机模型(十一):异步电机:绕线转子电机(一)...
  4. 直流电源端口雷击或瞬态浪涌防护设计方案图详解
  5. NFS搭建openfoam
  6. 23-初识正则表达式
  7. Matlab计算机视觉/图像处理工具箱(待续)
  8. Altium Designer20原理图库放置引脚报错解决方案
  9. Android P 适配指南
  10. 1799元!OPPO A9悄然上架:4月30日正式开售
  11. Spring : Spring Aop JDK和CGLIB动态代理调用过程
  12. 反射--获取构造器,获取父类,获取带泛型的父类,获取实现的接口,获取所在的包,获取注解
  13. 5.1、按键SW1控制LED1亮灭
  14. java贪吃蛇总结报告_java贪吃蛇开发总结
  15. 二叉平衡树的旋转操作
  16. 机器学习与数据挖掘 编程实现k均值算法
  17. 阿里云配置免费ssl证书,apache配置
  18. rust相框加载图片代码_vue图片加载与显示默认图片实例代码
  19. 我室友拿到了美团50万年薪,太牛逼了
  20. 虚拟linux jdk,虚拟机下Linux安装jdk

热门文章

  1. 如何为孩子挑选有益的玩具
  2. 压敏电阻产品介绍及选型概述
  3. 学习Python开发数据恢复工具(1)
  4. 蒸汽平台进dota2显示连接不上服务器,关于DOTA2接入蒸汽平台的常见问题
  5. zigbee路由杂谈
  6. 惠普PAVILION Gaming NB 15-ak039TX触摸板关闭
  7. MapReduce处理小文件合并
  8. 多摄像机网络智能视频监控系统设计与实现
  9. 在mysql中数据库对象包括_access2010数据库的对象包括哪几种
  10. Nginx内容过滤器-subs_filter