晴天的博客

记录自己的学习进程

谈谈TCP协议的三次握手和四次挥手

TCP协议 Transmission Control Protocol 传输控制协议,属于传输层通信协议,基于TCP的应用层协议有Http,smtp,ftp等 TCP的特性 面向连接: 传输数据之前会先建立连接,数据传输完毕之后释放连接 全双工通信:连接建立以后,通信双方能互相发送数...

2018-10-25 12:38:09

阅读数:56

评论数:0

关于Http协议你了解多少,有多少说多少

Http协议 超文本传输协议,构建与TCP/IP协议之上,默认端口号为80,处于网络体系结构的最顶层应用层上,Http协议采用的是请求/响应的工作方式。Http是无连接无状态的。 Q1:怎么理解Http是无连接无状态的 无连接是指限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的...

2018-10-24 08:26:45

阅读数:97

评论数:0

单例模式的几种实现与在Android源码中的应用

更多的关于设计模式与源码的内容都在我的github 我的博客 单例模式 核心原理: 将构造函数私有化,并且通过静态方法获取一个唯一的实例,在这个过程中必须保证线程安全、防止反序列化导致重新生成实例对象等问题。 UML 单例模式实现的几种方式 饿汉式 /*...

2018-04-17 17:37:09

阅读数:125

评论数:0

Android端“被挤下线”功能的实现

单点登录(被挤下线)所谓的被挤下线功能,即一个账号在A客户端保持登陆状态,然后又在B客户端进行了登陆操作,那么A客户端就会被挤下线。 服务端需要返回Token,每次在app登录时为app分配一个新的token,如果在某次请求中app传递token不是最新的,则视为需要重新登录,在token失效...

2017-11-09 10:35:02

阅读数:2153

评论数:0

常用设计模式---代理模式

概述 为目标对象提供一个代理对象,然后让代理对象控制对目标对象的引用。静态代理:代理类在编译时就已实现好,Java编译完成后代理类就是一个.class文件 动态代理:代理类在运行时生成,在运行时动态生成class文件并加载到jvm中 使用场景 生活中很多场景都会用到代理模式,最直观的例子就...

2017-07-31 19:00:33

阅读数:208

评论数:0

Android-上传Emoji表情到服务器的问题

先上效果 一开始在做仿微信发朋友圈或评论的时候表情一直上传不上去,和服务端哥们探讨了一下,发现是MySQL数据库存入不了表情符号,Google了一下,有人说当MySQL的版本大于5.6的时候可以通过修改编码还是字符集什么的就可以插入了,但是对我们还是不起作用。所以考虑了一段时间决定另辟蹊径,其实...

2017-04-07 22:53:33

阅读数:3341

评论数:2

解决ListView的getView()方法中View设置监听position错乱的问题

最近在项目中遇到了类似微信朋友圈的功能,可以点赞,评论和分享。类似这样的 这是ListView的一个item,点击右下角的view弹出一个popupWindow,然后popupWindow上面还有三个按钮可点击。不管是点赞还是评论,必须的获得当前条目的位置,然后根据这个位置再去获取一系列的参数信...

2017-04-07 22:49:16

阅读数:1226

评论数:0

Android-构建全局的异常捕捉类

整体思路构建Android应用全局的异常信息捕捉类,当App Crash的时候,能够获取崩溃信息,包括ExceptionMessage,手机信息,版本信息等。然后写入文件存到手机sd卡中。当应用下次开启的时候读取文件上传服务器,为后期的热修复做准备。首先新建一个ExceptionCrashHand...

2017-04-07 22:41:20

阅读数:212

评论数:0

Handler 机制 源码分析

看之前先问自己下面几个问题: Message 是怎么获取到消息对象的 消息是怎么加入到消息队列中的,又是怎么被取出来的 到底是怎么实现子线程和主线程的通信的 Handler sendMessage 是把消息发送到哪里了 Handler 处理消息的方法有几种 消息传递机制的核心类: Handle...

2016-10-27 23:21:41

阅读数:292

评论数:0

Android MVP 模式初探

MVP 模式

2016-10-22 21:40:09

阅读数:213

评论数:0

ListView的头部视差效果的实现

ListView的头部视差效果的实现

2016-10-06 12:40:04

阅读数:942

评论数:2

Android.线程池的原理和线程池管理类的使用

##线程池的原理 线程池使用来管理线程的,之所以称为池,是因为其可以管理多条线程,所以需要用一个集合来管理线程,然后线程池是有大小的,当一个线程池管理的线程数目为计算机的cup数*2+1个的时候,效率为最高。当使用线程池来执行异步任务的时候,线程池会先将这个任务添加到集合中,然后为其创建一个线...

2016-08-26 21:08:17

阅读数:1195

评论数:0

ButterKnife Android studio初试:配置环境,解决空指针问题

早就听说ButterKnife非常的方便,今天有机会自己实践一下,看着别人的教程在studio上搞了一遍,可是到运行的时候总是出现空指针异常,经过搜索,最后找到了问题所在。就是环境没有配好,可能是因为随着版本的更新每次配置也都不一样了。我所用的ButterKnife的版本是com.jakewhar...

2016-08-23 18:08:16

阅读数:2040

评论数:0

Android studio 1.2开发环境下配置AIDL,生成相应的.java文件

最近学习Android要从eclipse的开发环境转到Android studio下,各种不适应,不过Android studio酷炫的界面一直吸引着我,另外据说这是早晚的事,所以早点适应就好,自己就硬着头皮摸索着使用Android studio。今天学习了Android访问远程服务中的方法。所谓...

2015-09-28 15:50:38

阅读数:808

评论数:0

win10配置java环境变量,解决javac不是内部或外部命令等问题

昨天重装了win10系统,发现以前配好的java环境变量和tomcat环境变量全都清空了,在重新配置的时候总是出现问题,即在cmd命令窗口下,输入java,显示正常,输入java -version 也是显示正常,唯独输入javac,显示“javac不是内部或外部命令,布拉布拉一些的问题”,然后我就...

2015-09-12 10:39:22

阅读数:106890

评论数:148

Activity的生命周期和Activity的四种启动模式

Activity的七种生命周期方法void onCreate(); Activity已经被创建 void onStart(); Activity已经显示在屏幕,但是还没有得到焦点(不能交互) void onresume(); Activity得到焦点,可以和用户交互 void onPause();...

2015-09-08 10:49:57

阅读数:851

评论数:0

Android网络编程之使用post方式提交数据

上篇写了使用get方式提交数据,post和get两种方式的不同点就是,get是把要提交的数据截取成字符串添加到地址后面的。而post方式是通过流提交给服务器的。另外get只用提交表单数据即可,post还要提交另外的几项数据。 使用post表单提交数据,http请求头会有这样两行数据 Content...

2015-08-30 15:11:31

阅读数:2402

评论数:0

Android网络编程之使用get方式向服务端提交数据和乱码问题的解决

学习javaweb的时候都知道向服务端提交数据有两种方式,get和post。今天学习了在Android客户端使用get方式提交登录数据的小案例。 步骤:先新建一个web项目,搭建一个简单的登录表单界面设置好用户名和密码,点击登录的时候会显示登录成功或者失败,这里就不在贴Servlet和jsp的代码...

2015-08-30 14:04:23

阅读数:1596

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭