Skip to content

SnowJun/Simple

Repository files navigation

Simple

前言

自己撸的代码,可以欢迎研讨学习与交流, Demo经过了简单的调试,如果自己使用过觉得没问题, 可以应用,遇到问题欢迎讨论交流。 

博客地址

撸一个开源库

网络库介绍

库名及功能:
Simple的子库Net库,支持httpurlconnection和okhttp两种代理实现 功能主要包括,get请求,post表单,postJson, post上传文件,post上传多文件,post参数文件混传等。 
库地址
Github库:Simple
Gitee库:Simple
Jitpack主页:Simple
使用
maven{url'https://jitpack.io' } implementation'com.github.SnowJun.Simple:Net:1.0.3'
正式开始撸功能
  1. Builder配置:
SimpleNetBuilderbuilder = newSimpleNetBuilder(); //设置网络代理 默认为httpurlconnection 目前支持okhttp和httpurlconnection两种builder.setNetAgency(NetAgencyEnum.AGENCY_HTTPURLCONNECTION) //添加公共header请求 .addHeader("header", "xxxxx") //连接超时时间 单位毫秒 .connectTimeOut(10000) //读超时时间 .readTimeOut(10000) //写超时时间 .writeTimeOut(10000) //一键https .https() //请求重试次数 .retryCount(3); //使用builder初始化SimpleNet.getInstance().init(builder);
  1. Get请求
Map<String, String> paras = newHashMap<>(); paras.put("id", "id111"); paras.put("code", "code222"); SimpleNet.get(URL + "/info").paras(paras).excute(newStringCallBack(){@OverridepublicvoidonSuccess(Stringresult){tvContent.setText(result)} @OverridepublicvoidonFail(Stringreason){SimpleLog.e("onFail:reason->" + reason)} @OverridepublicvoidonException(Exceptione){SimpleLog.e("onException:e->" + e.getMessage())} }); tvContent.setText("请求中,请稍后...");
  1. Post表单参数,addHeader添加请求头
Map<String, String> paras = newHashMap<>(); paras.put("userName", "snowjun"); paras.put("password", "123456"); SimpleNet.postForm(URL + "/login").addHeader("session","aaaaa-bbbbb").paras(paras).excute(newStringCallBack(){@OverridepublicvoidonSuccess(Stringresult){tvContent.setText(result)} @OverridepublicvoidonFail(Stringreason){SimpleLog.e("onFail:reason->" + reason)} @OverridepublicvoidonException(Exceptione){SimpleLog.e("onException:e->" + e.getMessage())} }); tvContent.setText("请求中,请稍后...");
  1. Post Json请求
JSONObjectjsonObject = newJSONObject(); try{jsonObject.put("userName", "SnowJun"); jsonObject.put("password", "123456")} catch (JSONExceptione){e.printStackTrace()} SimpleNet .<JSONObject>postJson(URL + "login1") .json(jsonObject) .excute(newStringCallBack(){@OverridepublicvoidonSuccess(Stringresult){tvContent.setText(result)} @OverridepublicvoidonFail(Stringreason){SimpleLog.e("onFail:reason->" + reason)} @OverridepublicvoidonException(Exceptione){SimpleLog.e("onException:e->" + e.getMessage())} }); tvContent.setText("请求中,请稍后...");
  1. Post上传文件
SimpleNet.postFile(URL + "/uploadFile").file(file).excute(newStringCallBack(){@OverridepublicvoidonSuccess(Stringresult){tvContent.setText(result)} @OverridepublicvoidonFail(Stringreason){SimpleLog.e("onFail:reason->" + reason)} @OverridepublicvoidonException(Exceptione){SimpleLog.e("onException:e->" + e.getMessage())} }); tvContent.setText("文件上传中..");
  1. Post上传多文件
MultiRequestrequest = SimpleNet.postMulti(URL + "/uploadFiles"); request.addFiles("files", files); request.excute(newStringCallBack(){@OverridepublicvoidonSuccess(Stringresult){tvContent.setText(result)} @OverridepublicvoidonFail(Stringreason){SimpleLog.e("onFail:reason->" + reason)} @OverridepublicvoidonException(Exceptione){SimpleLog.e("onException:e->" + e.getMessage())} }); tvContent.setText("多文件上传中..");
  1. Post参数文件混传
SimpleNet.postMulti(URL + "/uploadAndLogin") .addParas("userName","snowjun") .addParas("password","123456").addFile("file",file).excute(newStringCallBack(){@OverridepublicvoidonSuccess(Stringresult){tvContent.setText(result)} @OverridepublicvoidonFail(Stringreason){SimpleLog.e("onFail:reason->" + reason)} @OverridepublicvoidonException(Exceptione){SimpleLog.e("onException:e->" + e.getMessage())} }); tvContent.setText("文件上传中..");
  1. Bitmap返回
SimpleNet.get("").excute(newBitmapCallback(){@OverridepublicvoidonSuccess(Bitmapresult){} @OverridepublicvoidonFail(Stringreason){} @OverridepublicvoidonException(Exceptione){} });
  1. File返回
SimpleNet.get("").excute(newFileCallBack("",""){@OverridepublicvoidonProgress(intprogress, longcurrent, longsize){} @OverridepublicvoidonSuccess(Fileresult){} @OverridepublicvoidonFail(Stringreason){} @OverridepublicvoidonException(Exceptione){} });
混淆
-dontwarnorg.simple.net.** -keepclassorg.simple.net.**{*} okhttp -dontwarnokhttp3.** -keepclassokhttp3.**{*} okio -dontwarnokio.** -keepclassokio.**{*}

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages