安卓开发项目中注意事项及遇到的小问题及如何解决的

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/wdx_1136346879/article/details/85706655

安卓开发项目中注意事项及遇到的小问题及如何解决的

1,Sqlite数据库,ObjectBox数据库,greendao,霍克
2,过度绘制页面,
3,获取时间戳改为服务器的时间戳,
4,集合数据给外面的时候 包一层
5,列表滑动至横通广告突然卡顿 硬件加速版本控制 安卓系统4.2以下开启硬件加速,反之 关闭
6权限所遇到的问题:pdf 下载存本地 打开权限 如何处理(劈开权限,改变存储位置)
7,进入app后首页一直在下载apk.版本问题,进入列表后卡顿出现
8,静默下载(完成后提示已经下载完成),
9,自定义(imageBanner,指数和7*24, 设置条目,分享生成图片)
10,viewPage(默认250) 切换滑动时间–反射(1000)
反射获取viewpager的Scroller,重定义scroll的延时时间。
11,自定义dialog 继承的dialog (魅族手机,部分三星出现弹窗顶部留白)
修改: 继承Dialog的子类AppCompatDialog
12,recycleview 不顺滑 如果多个RecylerView间共用一个RecycledViewPool是不是能让你的UI更加的“顺滑”?
如果你使用的LayoutManager是LinearLayoutManager或其子类(如GridLayoutManager),
需要手动开启这个特性 开启viewpool缓存池
13,单例 application不能乱用
14,imageload 多处调用 直接单例
15,内存抖动: 内存抖动是因为开了离屏缓冲.是圆角view那个导致的。

16,自定义控件必须重写三个构造方法()否则报异常,
17,严格的规范文档
18,ThreadLocal ,
19,SimpleDateFormat 线程不安全
20,AlignTextView文字两端对齐,
21,神策数据统计
22,在工作中如何学习和提高工作效率
及时了解安卓系系统的动态变化,应对注意安卓新升级的sdk与老版本有和不同,有何优点等多敲代码,做过的一定要完全弄懂解决问题的能力,
(一定要解决问题,怎么解决,有一個方案)如分享,知道的多,确定什么问题 对项目相当熟悉多浏览,多见识,多了解,善于总结(写博客),
一段时间自己会总结,用到的工具类,网络请求,新的插件,第三方类库好的demo会记一下,看看如何实现的,怎么样可以运用到项目中去同事提交的代码,
都要看看,为何他是这么写的,怎么实现的。代码中的优点(学习),缺点(和他一块讨论,一块改进一块进步)

展开阅读全文

目中出现的小问题

10-21

public String downEmportExecl()rn try rn Map map=new HashMap();rn map.put("companyId", mbsAppUser.getCompanyId());rn map.put("tradeStatus", TradeStatus.Paid.toString());rn map.put("tradeType", tradeType);rn map.put("startTime",startTime);rn Date endDate = null;rn if (endTime != null) // endTime 加 1 天rn DateTime dateTime = new DateTime(endTime);rn endDate = dateTime.plusDays(1).toDate();rn rn map.put("endTime",endDate);rn map.put("isFinance", isFinance);rn List list = mbsOrderWholesaleManager.downEmportExecl(map);rn OutputStream out = this.getResponse().getOutputStream();rn this.getResponse().setContentType("application/octet-stream;charset=UTF-8");rn StringBuffer sb = new StringBuffer(50);rn sb.append("attachment; filename=");rn SimpleDateFormat sdf = new SimpleDateFormat( "yyyy年MM月dd日" );rn if(startTime != null)rn String start = sdf.format(startTime);rn sb.append(start+"至");rn rn if(endTime != null)rn String end = sdf.format(endTime);rn sb.append(end);rn rn sb.append("交易列表");rn sb.append( ".xls");rn this.getResponse().setHeader("Content-Disposition", new String(sb.toString().getBytes("GBK"),"ISO-8859-1"));rn // 然后输出文件rn Map> map1 = new HashMap>();rn map1.put("alreadydownemport", list);rn XLSTransformer transformer = new XLSTransformer();rn Resource rs ;rn if(isFinance != null && isFinance.equals("1"))rn rs = new ClassPathResource(downEmportExecl);rn elsern rs = new ClassPathResource(downEmportExecl1);rn rn InputStream is = new BufferedInputStream(rs.getInputStream());rn HSSFWorkbook book = (HSSFWorkbook) transformer.transformXLS(is, map1);rn book.write(out);rn out.flush();rn out.close();rn rnrn return SUCCESS;rn catch (Exception e) rn log.error("error", e);rn jsonString = ExtJsonConstants.Success_false_sys_error;rn return INPUT;rn rn rnrn提示2013-10-21 09:56:50.181 ERROR org.apache.struts2.dispatcher.Dispatcher[38] - Exception occurred during processing request: java.lang.IllegalStateException: getOutputStream() has already been called for this responsern这个方法是复制的,有点小改动,但是出现这个错误 论坛

没有更多推荐了,返回首页