最近在做项目时,发现一些好用的类,现小计一下,大神勿入:
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.4.0'
compile 'org.apache.commons:commons-lang3:3.4'
compile 'commons-io:commons-io:2.4'
compile files('libs/javax.json-1.0.jar')
compile files('libs/okhttp-3.3.1.jar')
compile files('libs/okio-1.8.0.jar')
compile files('libs/commons-fileupload-1.3.2.jar')
}
其中,对于commons-io:commons-io:2.4 这个包,主要 使用的是IOUtils这个类,其提供了一些好用的方法,如IOUtils.toString(InputStream in)等。
对于javax.json-1.0.jar,其提供了功能更加强大的JSON数据的操作。
对于okhttp-3.3.1.jar,其提供了http和https的通信的一些功能,okhttp可以保证连接的可持续性,没各一定时间ping一次。还提供了发送muiltipart body的功能,另外对于该okhttp目前在android5.0以下的版本会出现SSLException的异常,主要原因是android底层TLS或者SSL的问题。
对于 commoms-fileupload-1.3.2.jar,提供了类似文件的储存功能,可以将multipart stream一层层的解析。
对于类的构造函数,其实都是static类型的。而static类型是存在class文件中的,private成员函数默认都是final类型的,所有不可以继承。
编译以上jar包的时候,会出现错误,此时是因为license文件不止一个,冲突的原因,只需在gradle文件中加入
packagingOptions {
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/NOTICE.txt'
}
以下代码,可以建立HTTP连接,android自带 的HttpUrlConnection。
String END_POINT = "https:/www.google.com";
URL url = new URL(END_POINT);
HttpUrlConnection connection = (HttpUrlConnection)url.openConnection();
InputStream error = null;
InputStream response = null;
DataOutputStream output