忆向Blog

忆者:回忆者也,
向者:往昔者也,
忆向者:缅怀往昔铭心岁月也,
所有回不去的良辰美景,都是举世无双的好时光,
遂,我的博客取名为“忆向BLOG”!

最新推荐

C++模块     

SSE(server-sent events)的原理

SSE可以实现客户端跟服务端建立单向长连接,从而实现服务端向客户端发送通知的目的。它兼容常规http请求,所以服务端基本不需要有啥变化。其基本原理也非常简单,就是客户端向服务端发起一个GET请求,而服务端不返回Content-Length,按一定的格式在需要时返回一段结果,这样客户端一直处于解析结果的状态。看起来有点像http chunked编码,但显然不是一个东西。

浏览器的eventsource便是对这个技术的原生支持。考虑到浏览器对同域名建立连接的限制,如果打开多个tab,一个tab建立一个连接,那么开启超过6个tab,就会出问题,在http/1.1下,浏览器默认同域名最多建立6个连接。如果是http/2,这个默认值大概是100.... ...

 阅读全文»
Python模块     

python临时关闭warning警告

在python里,如果想产生一个警告,比如要建议调用者尽量不用某个老版本模块,写法如下:... ...

 阅读全文»
Ubuntu模块     

maven原理和nexus搭建

maven的原理

搞安卓开发的都知道三方库管理仓库叫maven,以前的jcenter废弃了。maven作为一个包管理的仓库,它的工作原理是什么样的呢,或者说,知道一个maven仓库的地址,如何可以手动找到某个包的下载地址呢?

举个例子依赖库为:com.mob.sdk:MobSDK:+

知道其maven库的地址为:http://mvn.mob.com/android/

那么根据java里包名转url的规则,点(.)和冒号(:)变成目录分隔符,该包的各种版本信息为:http://mvn.mob.com/android/com/mob/sdk/MobSDK/maven-metadata.xml... ...

 阅读全文»
杂文模块     

安卓android版本和API罗列

关于安卓API版本

通常在android的build.gradle里有这么几个版本,关系为:

minSdkVersion<=targetSdkVersion<=compileSdkVersion

minSdkVersion:很好理解,App能支持的最小版本

compileSdkVersion:编译时的版本,考虑sdk是向下兼容的,所以可理解为运行的最高版本

targetSdkVersion:这个比较不好理解,表示做了充分测试所基于的目标版本,App会尽可能在该版本上运行... ...

 阅读全文»

回到顶部

首页 | 关于我 | 关于本站 | 站内留言 | rss
python logo   django logo   tornado logo