一起玩转Android项目中的字节码

转载请标明出处一起玩转Android项目中的字节码

作为Android开发,日常写Java代码之余,是否想过,玩玩class文件?直接对class文件的字节码下手,我们可以做很多好玩的事情,比如:

阅读全文

第一个sketch作品-----临摹LOGO

最开始想学sketch是因为想做一个饭否客户端,而要做一个客户端第一步是想好如何设计,难免需要一点设计技能,所以就开始学习sketch,最开始一直无从下手,拖了很久。这两天发现从临摹LOGO开始是个不错的方式。以我的体会,这个临摹过程学习到最重要的两个点是,

  • 熟悉sketch基本操作,与一些图形转化技巧。

阅读全文

Apache POI获取Excel内嵌图片大小的一处bug

近来用Apache POI解析Excel内容,遇到一个解析图片的坑,这篇文章将解释如何正确获取Excel中图片的正确大小和位置。我想,这篇文章很适合和我一样正在用Apache POI解析Excel内容的人阅读,替你避开一些坑,以及让你知道Apache POI中一处解析图片大小的bug。

我们知道,Apache POI中对Excel的图片的大小和位置存储在ClientAnchor对象中,而该对象可以通过Picture获取

阅读全文

如何为Android应用提供全局的HttpDNS服务

由于一些ISP的LocalDNS的问题,用户经常会获得一个次优的DNS解析结果,导致网络访问缓慢,其中原因无非三点,第一:ISP的LocalDNS缓存;第二:ISP为了节约成本,转发DNS请求到其他ISP;第三:ISP递归解析DNS时,可能由于NAT解析错误,导致出口IP不对。这些问题也促进了各大互联网公司推出自己的DNS服务,也就是HttpDNS,传统的DNS协议是通过UDP实现,而HttpDNS是通过Http协议访问自己搭建的DNS服务器。关于HttpDNS设计的初衷,推荐阅读这篇文章【鹅厂网事】全局精确流量调度新思路-HttpDNS服务详解

阅读全文

正则表达式之语法

之前使用正则表达式,总对一部分正则语法模棱两可。这周末看了《正则表达式必知必会》,一本100来页的小工具书,非常实用,系统地梳理了正则表达式的语法。本文主要围绕这本书,从易到难介绍正则的使用,用于帮我自己梳理思路。

阅读全文

WebView资源并发加载的另一种思路

我们经常通过WebViewClientshouldInterceptRequest方法拦截WebView请求,自己托管页面资源的加载,我们先来看一下这个方法能为我们做什么:

1
2
3
4
5
6
7
8
9
@Deprecated
public WebResourceResponse shouldInterceptRequest(WebView view,
String url) {
return null;
}
public WebResourceResponse shouldInterceptRequest(WebView view,
WebResourceRequest request) {
return shouldInterceptRequest(view, request.getUrl().toString());
}

阅读全文

Unicode的设计和原理

带你重新恩施Unicode.

阅读全文

SparseArray和ArrayMap的优缺点和使用场景

SparseArray和ArrayMap以及其衍生类都是Android独有的集合类,它们的衍生类主要有以下几个:

SparseArray

  • SparseBooleanArray
  • SparseIntArray

阅读全文

Java是解释性还是编译性语言

六月一号了,儿童节快乐。

突然有一个疑问,Java语言为什么是解释性语言而非编译性语言,Java文件不都需要编译成class文件吗?

首先先介绍一下解释性语言和编译性语言。

计算机不能直接理解高级语言,而只能直接理解机器语言,所以我们需要把高级语言翻译成机器语言,计算机才能执行高级语言编写的程序。而将高级语言翻译成机器语言的翻译方式有两种,一种是编译,一种是解释。这两种方式的主要区别在于翻译的时间不同。

阅读全文

huawei上日志输出的问题

前两天用Android官方推荐的一个辅助打计时日志的工具:TimingLogger.这个工具确实挺方便的,可以达到以下效果

阅读全文