嘻哈包袱铺 专栏

github开源项目 https://github.com/GeekGhost/Ghost

HttpClient的几个超时时间

TCP Socket 连接超时: 如果应用层不能及时接受已被TCP接受的连接,这些连接可能占满整个连接队列,新的连接请求可能不被响应而会超时。如果一个连接请求SYN发送后,一段时间后没有收到确认SYN+ACK,TCP会重传这个连接请求SYN两次,每次重传的时间间隔加...

2017-11-23 17:47:31

阅读数:304

评论数:0

logback的使用和logback.xml详解

logback的配置介绍   1、Logger、appender及layout Logger作为日志的记录器,把它关联到应用的对应的context上后,主要用于存放日志对象,也可以定义日志类型、级别。 Appender主要用于指定日志输出的目的地,目的地可以是控制台、文件、远程套接字服务器、...

2017-11-23 15:27:15

阅读数:156

评论数:0

OkHttp之拦截器

拦截器是一个非常强大的机制,可以监视,重写和重试call。这里是一个简单的拦截器,用来打印出去的请求和收到的响应。 class LoggingInterceptor implements Interceptor { @Override public Response intercept(Int...

2017-11-22 16:34:52

阅读数:183

评论数:0

携程App的网络性能优化实践

转载自:http://www.infoq.com/cn/articles/how-ctrip-improves-app-networking-performance 首先介绍一下携程App的网络服务架构。由于携程业务众多,开发资源导致无法全部使用Native来实现业务逻辑,因此有相当一部...

2017-11-22 15:34:30

阅读数:194

评论数:0

okhttp post 重定向参数丢失 跨协议重定向

序言 最近的项目中,一个已经开发多时的接口突然就不能用了。抓包发现,原来是由于重定向引起的bug。发现了两个。 问题1. 如果遇到301,302等重定向,则会忽略原来的请求方式,统一使用GET方式。如果原来使用的是POST方式,则会丢失参数。如下图 post请求中有一个userId参数 ...

2017-11-21 18:28:36

阅读数:255

评论数:0

在Mac上安装office2016破解版

2017.03.13 更新 2017.02.21 更新 2017.01.16 更新 前言 在Mac上怎么能没有制作文档/表格/ppt的工具呢?在windows上有office可以使用,在Mac上当然也有office使用,不过这个office是收费的。。。可是,可是,,,在中国谁还用收费的软件呢?哈...

2017-11-21 18:25:43

阅读数:5928

评论数:-1

Http协议之301,302和307

Http协议是有状态码的,比较熟悉的状态码是200,代表链接OK,还有404和403,一个是not found,另一个是forbidden。Not found不用多说,可能是地址栏输入有误,或者是网页已经被移动。Forbidden的原因有很多,有可能是IP被服务器拉入黑名单,有可能是IP过分密集的...

2017-11-21 12:33:46

阅读数:885

评论数:0

Dagger2从入门到放弃再到恍然大悟

现在Dagger2在项目里用的越来越多了,最近花了些时间学习了一下Dagger2,这篇文章主要帮助理解Dagger2的注入实现过程,如有错误,还请指正! 什么是Dagger2 Dagger2是Dagger的升级版,是一个依赖注入框架,现在由Google接手维护。 恩,这里有个关键字依赖...

2017-11-20 11:16:02

阅读数:222

评论数:0

Java - 写给 Android 应用开发者的 JNI 快速入门指北

Java Native Interface(Java本地接口) 简称 JNI,是一种编程框架,使得 JVM 中的 Java程序 可以调用本地应用/或库,也可以被其他程序调用。其过程可以不负责任的理解成 Java 的反射,因为代码逻辑和反射调用很像。 源码 本文所有涉及的所有源码:https...

2017-11-15 15:44:35

阅读数:147

评论数:0

Android NDK开发扫盲及最新CMake的编译使用

1 NDK 简介 在介绍 NDK 之前还是首推 Android 官方 NDK 文档。传送门 官方文档分别从以下几个方面介绍了 NDK NDK 的基础概念 如何编译 NDK 项目 ABI 是什么以及不同 CPU 指令集支持哪些 ABI 如何使用您自己及其他预建的库 本节将会对文档进行总结和...

2017-11-15 14:34:25

阅读数:210

评论数:0

Android SO文件的兼容和适配

开发Android应用时,有时候Java层的编码不能满足实现需求,就需要到C/C++实现后生成SO文件,再用System.loadLibrary()加载进行调用,这里成为JNI层的实现。常见的场景如:加解密算法,音视频编解码等。在生成SO文件时,需要考虑适配市面上不同手机CPU架构,而生成支持不同...

2017-11-15 14:30:03

阅读数:125

评论数:0

APP弱网络条件下,体验优化之道

APP弱网络条件下,体验优化之道 最近跟朋友聊天刚好聊到这一块,他们是在做电商业务,商品图片及其多,API接口请求频率也高。然而,他们在移动2/3G的网络环境下,APP经常会出现Loading很久的情况,这里我把我们所分析与使用到的网络优化方案与大家分享一下。 所谓的弱...

2017-11-13 14:14:20

阅读数:222

评论数:0

Android架构思考(模块化、多进程)

转载自:http://blog.spinytech.com/2016/12/28/android_modularization/ 关于模块化(组件化)这个问题,我想每个开发者可能都认真的思考过。随着项目的开发,业务不断壮大,业务模块越来越多,各个模块间相互引用,耦合越来越严重,同时有些项...

2017-11-13 11:51:58

阅读数:134

评论数:0

提高代码质量 - 工具篇

在这片文章中,我将从工具使用的角度上讲述如何提高Android代码质量,这些自动化工具包括Checksytle,Findbugs,PMD和Android Lint。团队中代码意识不一致,水平参差不齐,代码风格迥异,定下的规范也是熟视无睹。这时候就需要借助工具的力量,利用工具自动地帮助我们检测代码,...

2017-11-13 11:46:53

阅读数:153

评论数:0

国内各地图API坐标系统比较与转换(做LBS的朋友请转)

一、各个坐标系的概况 众所周知地球是一个不规则椭圆体,GIS中的坐标系定义由基准面和地图投影两组参数确定,而基准面的定义则由特定椭球体及其对应的转换参数确定。 基准面是利用特定椭球体对特定地区地球表面的逼近,因此每个国家或地区均有各自的基准面。基准面是在椭球体基础上建立的,椭球体可以对应多个基准面...

2017-11-13 10:09:13

阅读数:1103

评论数:0

Google官方MVP+Dagger2架构详解

转载自:http://www.jianshu.com/p/01d3c014b0b11 前言 前段时间分享了一篇文章:google官方架构MVP解析与实战 ,针对这是对google官方示例架构的一个分支todo-mvp/ 的项目解析与实际运用,google官方示例架构项目googlesamples/...

2017-11-13 09:49:13

阅读数:421

评论数:0

代码检视工具Gerrit的日常使用

转载自:HTTP://cdn2.jianshu.io/p/b77fd16894b6 1,Gerrit是什么? Gerrit实际上一个Git服务器,它为它的服务器上托管的Git仓库提供了一系列的权限控制,以及一个用户做代码审查是Web前台页面。当然,其主要功能就是用来做Code Review。...

2017-11-09 11:31:15

阅读数:176

评论数:0

gerrit自动设置reviewer

gerrit 提供了一种代码review解决方案,但每次代码提交之后都要设置每个commit的code reviewer, 实在是痛苦。 gerrit 在官方说明文档里面提供了解决方法,地址: https://gerrit-review.googlesource.com/D...

2017-11-09 11:28:37

阅读数:842

评论数:0

Android-安全-签名验证让二次打包变的更难

转载:http://blog.csdn.net/qq_32452623/article/details/54351364 二次打包的危害性 如果你没有对你的应用做任何的安全保障措施,那么你的应用就非常的危险 首先了解一下什么是二次打包: 二次打包  通过工具a...

2017-11-09 09:44:06

阅读数:361

评论数:0

Android Studio NDK 入门demo

针对刚入门NDK的同学简化一下入门程序的编写,哈哈 一、新建NdkTest项目。 二、直接在目录下新建native方法工具类,方便调用。 三、MainActivity中调用Native方法更新UI。 public class MainActivity ext...

2017-11-08 10:16:24

阅读数:99

评论数:0

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