技术小黑屋

一个关于安卓打包提速的小改进

作为App开发者,打包和发包是经常要进行的工作。鉴于国内的特殊情况,造就了不可胜举的应用市场。为了便于跟踪统计必要的数据信息,我们通常会针对每个市场都进行打包。这些包总的来说几乎是一致的,可能唯一的的差别就是渠道号信息不一样。

深入剖析 Android中的 ArrayMap

数据集合在任何一门编程语言中都是很重要的一部分,在 Android 开发中,我们会实用到ArrayList, LinkedList, HashMap等。其中HashMap是用来处理键值对需求的常用集合。 而Android中引入了一个新的集合,叫做ArrayMap,为键值对存储需求增加了一种选择。

关于 Android 应用多进程的整理

在计算机操作系统中,进程是进行资源分配和调度的基本单位。这对于基于Linux内核的Android系统也不例外。在Android的设计中,一个应用默认有一个(主)进程。但是我们通过配置可以实现一个应用对应多个进程。

本文将试图对于Android中应用多进程做一些整理总结。

一个事半功倍的Java反射库

在Java和Android中,我们常常会使用反射来达到一些兼容的目的。Java原生提供的反射很是麻烦,使用起来很是不方便。比如我们想要调UserManager的静态方法get,使用原生的实现如下

1
2
3
4
5
6
7
8
9
10
11
try {
    final Method m = UserManager.class.getMethod("get", Context.class);
    m.setAccessible(true);
    m.invoke(null, this);
} catch (NoSuchMethodException e) {
    e.printStackTrace();
} catch (IllegalAccessException e) {
    e.printStackTrace();
} catch (InvocationTargetException e) {
    e.printStackTrace();
}

为什么程序员应该要尝试写一写博客

作为程序员,最平常不过的就是敲代码了。然也,这是我们自身以及外界对我们最朴实的认知。在编码过程中,我们可能会遇到并解决掉一些问题,积累经验和心得,有的人选择用自然语言记录下来,形成博客,而大多数人往往不会做这种记录。

本文将试图探讨,为什么程序员都应该尝试记录自己遇到的问题,经验和心得,以及为什么我们需要以公开的博客的形式来展现。

我的2016年总结

岁末年初,辞旧迎新,这一年转瞬即逝,2016年里经历了很多,虽不及大书特写,但还是有必要记录一下,以作日后回顾。

关于对象池的一些分析

在日常的开发工作中,我们可能使用或者听说过对象池,线程池以及连接池。本文将介绍对象池的产生缘由,具体实现细节,以及需要注意的问题。

什么是对象池(模式)

  • 对象池(模式)是一种创建型设计模式
  • 它持有一个初始化好的对象的集合,将对象提供给调用者。

关于Java中枚举Enum的深入剖析

在编程语言中我们,都会接触到枚举类型,通常我们进行有穷的列举来实现一些限定。Java也不例外。Java中的枚举类型为Enum,本文将对枚举进行一些比较深入的剖析。

什么是Enum

Enum是自Java 5 引入的特性,用来方便Java开发者实现枚举应用。一个简单的Enum使用如下。

1
2
3
4
5
6
7
8
9
10
11
12
// ColorEnum.java
public enum ColorEmun {
    RED,
    GREEN,
    YELLOW
}

public void setColorEnum(ColorEmun colorEnum) {
    //some code here
}

setColorEnum(ColorEmun.GREEN);