Android项目总结
功能:
1.图片载入 ImageLoader 參数配置要合理 cacheMemory 一次性的图片最好不要缓存在内存中 合理控制在内存中的内存大小 ,适当的释放 volley是google官方的
也不错
2.适配器 抽象出一个基类 统一管理
3.ListView 封装添加载入很多其它和下拉刷新
4.数据库 訪问要及时关闭cursor,注意多线程訪问
5.广播 一般我们都喜欢在onCreate注冊。onDestory反注冊。但会有隐藏的bug,比方内存不足时是不走onDestory生命周期的,就可能发生广播leak,官方建议在onPause,onResume注冊。
6.Http框架 AsyncHttpClient github排行非常高的库 不须要自己去写了 须要理解的是HTTP协议,ssl等等。
7.线程的使用 请求网络的 都要统一管理,界面退出时取消线程回调
8.Context 能用的AppLicationContext都用,避免Context泄漏
9.省电 减小对cpu的使用,以及屏幕的唤醒操作 网络请求不要过于频繁 网络请求数据压缩 不要做太复杂的计算(游戏除外)
10.图片压缩 先设置好的尺寸 循环压缩到一定的大小
11.EventBus 减少耦合,性能不错
12.编码风格 写代码不仅是是为了完毕功能,也是书写你自己的外表。
13.内存泄漏 大多数是图片引起的 分析方面使用mat插件
14.设计模式 代码整洁
UI
1.actionbar
2.slidingmenu
3.pulltofreshlistview
4.pagerslidingtabstrip
5.nineoldandroids
6.drawlayer
7.熟悉view视图绘制等
写代码的感觉:
超过两次反复的代码,就要重构
尽可能的抽象出基类 合理使用组合和继承
熟悉主要的排序,查找的算法,集合不要仅仅懂ArrayList,HashMap
提升: 多写 多看优秀的代码 多去思考 不要浪费了你的大脑
经历 做过平板项目,视频类,了解ffmpeg,做过通讯类,xmpp协议类 期间也做一些游戏项目,使用cocos2d-x
Android项目总结的更多相关文章
- Android——eclipse下运行android项目报错 Conversion to Dalvik format failed with error 1解决
在eclipse中导入android项目,项目正常没有任何错误,但是运行时候会报错,(clean什么的都没用了.....)如图: 百度大神大多说是jdk的问题,解决: 右键项目-Properties如 ...
- eclipse — 导入android项目后识别成java项目的问题及解决
最近在eclipse导入android项目的时候遇到了奇葩问题,再此记录 遇到的问题就是:将完好的android项目导入到eclipse的时候,原本这是一个很容易的事情,但是导入成功后发现,,,靠ec ...
- 用Kotlin创建第一个Android项目(KAD 01)
原文标题:Create your first Android project using Kotlin (KAD 01) 作者:Antonio Leiva 时间:Nov 21, 2016 原文链接:h ...
- Android之什么是Activity和常用的ADB命令以及Android项目结构的认识
总结一下之前学习Android的一些内容 一: Android常用的ADB命令(adb android调试桥) 1.adb devices 查看模拟器设备并重新连接. 2.adb ki ...
- eclipse将android项目生成apk并且给apk签名
转载:http://www.cnblogs.com/tianguook/archive/2012/09/27/2705724.html 生成apk最懒惰的方法是:只要你运行过android项目,到工作 ...
- Android开发学习——Android项目的目录结构
Android项目的目录结构: 资源文件夹: 清单配置文件: Android的四大组件在使用前全部需要在清单文件中配置 <?xml version="1.0" encodin ...
- Android项目实战(二十五):Android studio 混淆+打包+验证是否成功
前言: 单挑Android项目,最近即时通讯用到环信,集成sdk的时候 官方有一句 在 ProGuard 文件中加入以下 keep. -keep class com.hyphenate.** {*;} ...
- Android项目实战(二十四):项目包成jar文件,并且将工程中引用的jar一起打入新的jar文件中
前言: 关于.jar文件: 平时我们Android项目开发中经常会用到第三方的.jar文件. 其实.jar文件就是一个类似.zip文件的压缩包,里面包含了一些源代码,注意的是.jar不包含资源文件(r ...
- 初次尝试用Kotlin实现Android项目
Kotlin: The Swift of Android 起这个文内标题的原因很简单,就是对Kotlin抱有希望--能使Android的开发更简洁.高效及安全.知道Kotlin是从简书的一篇短文,越来 ...
- 原生Android App项目调用Untiy导出的Android项目
背景:采用Google VR SDK for Unity 开发3D场景功能,然后导出Android项目,合并到一个Android App里面,供其它Activity调用. 用Google VR for ...
随机推荐
- Selenium2+python自动化54-unittest生成测试报告(HTMLTestRunner)【转载】
前言 批量执行完用例后,生成的测试报告是文本形式的,不够直观,为了更好的展示测试报告,最好是生成HTML格式的. unittest里面是不能生成html格式报告的,需要导入一个第三方的模块:HTMLT ...
- 关于ros stage与navigation仿真总结5月16号
主要总结内容 在costmap里是怎么判断机器人和障碍物碰撞了 stage_ros包输入输出,stage是怎么回事 rviz 中footprint和stage中position怎么联系到一起 voxe ...
- Parsing Netflow using Kibana via Logstash to ElasticSearch
https://www.rsreese.com/parsing-netflow-using-kibana-via-logstash-to-elasticsearch/
- 添加登录装饰器的两种方式:FBV和CBV
1.FBV方式:添加验证装饰器 def auth(func): def deco(request, *args, **kwargs): u = request.get_signed_cookie('u ...
- (2)创建发布Maven
一.创建maven项目 (1)命令行 mvn archetype:generate (2)选择模板默认是7 (3)输入组织号.项目名称及版本号.包名 回车确认 创建成功 二.转成idea项目 进入跟目 ...
- java 中==符号的坑
在某技术群看到这样的一个面试题目: 这是一个4年经验的java 从业者的答案. 你的答案是什么呢? 正确的答案是true. 为什么? 其实当使用String a="a"+" ...
- [BZOJ4650][NOI2016]优秀的拆分(SAM构建SA)
关于解法这个讲的很清楚了,主要用了设关键点的巧妙思想. 主要想说的是一个刚学的方法:通过后缀自动机建立后缀树,再转成后缀数组. 后缀数组功能强大,但是最令人头疼的地方是模板太难背容易写错.用这个方法, ...
- Linux下提示命令找不到:bash:command not found
Linux下输入某些命令时会提示:bash:command not found. 首先,查看$PATH中是否包含了这些命令. $PATH:决定了shell到哪些目录中去寻找命令或程序,PATH值是一系 ...
- SpringMVC(流程+第一个Demo)
一.流程图 用户发送请求至前端控制器DispatcherServlet DispatcherServlet收到请求调用HandlerMapping处理器映射器. 处理器映射器根据请求url找到具体的处 ...
- 【InteillJ IDEA】Git的安装+同步项目到GitHub上
需要的工具: 1.InteillJ IDEA 2.Git 3.GitHub帐号 步骤: 1.下载Git 下载地址:https://git-scm.com/downloads 安装完成后 勾选Launc ...