【运行说明】运行AndbaseDemo需要将文件中的Andbase库Add进demo中。
1.andbase中包含了大量的开发常用手段。
如网络下载,多线程与线程池的管理,数据库ORM,图片缓存管理,图片文件下载上传,Http请求工具,SOAP工具类,异步Task,常用工具类(字符串,日期,文件处理,图片处理工具类等),能够使您的应用在团队开发中减少冗余代码,很大的提高了代码的维护性与开发高效性,能很好的规避由于开发疏忽而导致常犯的错误。
2.andbase封装了大量的常用控件。
如list分页,grid分页,下拉刷新,进度框,图片轮播,表格,多线程下载器,侧边栏,图片上传,轮子选择,图表,Tab滑动,日历选择器等。
3.强大的AbActivity,您没有理由不继承它。
继承它你能够获得一个简单强大可设置的操作栏,以及一系列的简单调用,如弹出框,提示框,进度框,副操作栏等。
4.提供效率较高图片缓存管理策略,使内存大幅度节省,利用率提高,效率提高。
程序中要管理大量的图片资源,andbase提供简单的方法,几步完成下载与显示,并支持缩放,裁剪,缓存功能,OOM不在有。
5.封装了大量常见工具类。
包括日期,字符,文件,图片,数学,View万能适配工具类等各种处理函数, 多而全。
6.用andbase大量减少handler的使用,而采用回调函数,代码更整洁。
handler会产生大量代码,并且不好维护,andbase对handler进行了封装,你会发现用了andbase基本代码中不会再有大量的handler判断语句。
7.简单轻量支持注解自动建表的ORM框架(支持一/多对多的关联操作)。
写sql,建表,工作量大,andbase提供更傻瓜异步增删改查工具类,数据库在内置卡和外置卡都可以。
8.异步请求http框架,网络请求标准化,支持文件上传下载,get,post,进度显示。
包含了异步与http请求的工具类,SOAP请求工具类,简单实用。
左侧滑动 登入注册 tab 框架功能列表
源码片段:
public class NetworkWeb { private AbHttpUtil mAbHttpUtil = null; private Context mContext = null; public NetworkWeb(Context context) { // 创建Http工具类 mContext = context; mAbHttpUtil = AbHttpUtil.getInstance(context); } /** * Create a new instance of SettingWeb. */ public static NetworkWeb newInstance(Context context) { NetworkWeb web = new NetworkWeb(context); return web; } /** * 调用请求的模版 * @param param1 参数1 * @param param2 参数2 * @param abHttpListener 请求的监听器 */ public void testHttpGet(String param1,String param2,final AbHttpListener abHttpListener){ // 一个url地址 String urlString = "http://www.amsoft.cn/rss.php"; mAbHttpUtil.get(urlString, new AbStringHttpResponseListener(){ @Override public void onSuccess(int statusCode, String content) { //将结果传递回去 abHttpListener.onSuccess(content); } @Override public void onStart() { } @Override public void onFinish() { } @Override public void onFailure(int statusCode, String content, Throwable error) { //将失败错误信息传递回去 abHttpListener.onFailure(content); } }); } /** * 调用一个列表请求 * @param AbRequestParams 参数列表 * @param abHttpListener 请求的监听器 */ public void findLogList(AbRequestParams params,final AbHttpListener abHttpListener){ final String result = AbFileUtil.readAssetsByName(mContext, "article_list.json","UTF-8"); // 一个url地址 String urlString = "http://www.amsoft.cn/rss.php?"; mAbHttpUtil.get(urlString,params,new AbStringHttpResponseListener(){ @Override public void onSuccess(int statusCode, String content) { try { //模拟数据 content = result; AbResult result = new AbResult(content); if (result.getResultCode()>0) { //成功 ArticleListResult mArticleListResult = (ArticleListResult)AbJsonUtil.fromJson(content,ArticleListResult.class); List<article> articleList = mArticleListResult.getItems(); //将结果传递回去 abHttpListener.onSuccess(articleList); } else { //将错误信息传递回去 abHttpListener.onFailure(result.getResultMessage()); } } catch (Exception e) { e.printStackTrace(); abHttpListener.onFailure(e.getMessage()); } } @Override public void onStart() { //开始的状态传递回去 } @Override public void onFinish() { //完成的状态传递回去 } @Override public void onFailure(int statusCode, String content, Throwable error) { //将失败错误信息传递回去 abHttpListener.onFailure(content); } }); } }
代码:这里