浅谈android应用开发中的优化-友盟陈彧堃

浅谈android应用开发中的优化-友盟陈彧堃

ID:15395883

大小:1.92 MB

页数:38页

时间:2018-08-03

浅谈android应用开发中的优化-友盟陈彧堃_第1页
浅谈android应用开发中的优化-友盟陈彧堃_第2页
浅谈android应用开发中的优化-友盟陈彧堃_第3页
浅谈android应用开发中的优化-友盟陈彧堃_第4页
浅谈android应用开发中的优化-友盟陈彧堃_第5页
资源描述:

《浅谈android应用开发中的优化-友盟陈彧堃》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、Android应用开发中的优化和设计陈彧堃Weibo:~/chenyukun1互联网营销资料库垂柳社区编辑www.Chuiliu.com垂柳资料库当前容量:2350G(2013.6)关于友盟。。。1面向中国移动开发者、开发商的服务平台2实时统计分析、开发组件、应用联盟3行业沙龙4数据报告3Agenda•用户体验为本•开发难点•优化策略•复用4应用开发者的关注点第三方应用…•应用开发属于Application层,重点在灵活使用AndroidSDKAPI•电话/短信—掌握Framework层相关技术•ROM/OSportin

2、g—Library5用户体验为本快——唯快不破•触摸反应时间长•ANR(ApplicationNotRespond)•网络等待6用户体验为本7用户体验为本友好——用户操作流畅,自然•UI不适配•从后台打断用户•照搬ios设计,不顺应android的用户习惯8用户体验为本省电本地复杂算法Service频繁更新网络请求频繁•平均启动时间1分钟,一次GPRS请求10秒左右•重试请慎重9开发中的难点GFWhttp://developer.android.com/http://android-developers.blogs

3、pot.comhttp://groups.google.com/group/android/developers10开发中的难点适配•硬件•分辨率•OS11开发中的难点内存管理•单个程序24M•OOM(outofmemory)12视图优化Layoutprofiling:Layoutopt~/tools/layoutopt.bat•FrameLayout滥用•超过13层•超过80个view…13视图优化减少View以及View的嵌套层次14视图优化减少View以及View的嵌套层次15视图优化HierarchyViewer

4、:~/tools/hierarchyviewer16视图优化PNG图片压缩•Draw9patch~/tools/draw9patch.bat•Android原生的很多图片其实都很小9patch直接拉伸17视图优化PNG图片压缩•如何从左侧简单小图拉伸到右侧大图?selector18视图优化PNG图片压缩19视图优化PNG图片压缩2020视图优化PNG图片压缩•一个更复杂的例子21视图优化PNG图片压缩•可以带来几十K的apk压缩•GPRS下载成功率会大幅度提高22视图优化分辨率适配•-ldpi,-mdpi,-hdpi配置

5、不同精度资源•系统会根据设备自适应•包括drawable,layout,style等不同资源23视图优化尽量使用dp(densityindependentpixel)•Pixel的问题?24视图优化尽量使用dp(densityindependentpixel)•系统跟应用的对话25视图优化尽量使用dp(densityindependentpixel)•系统跟应用的对话•如果你说:“我对这种屏幕没有做特殊处理”,那么奇迹发生了。系统启动兼容模式,很多关于尺寸的数据会变化。•比如800*480的设备,通过API获取到的分辨率

6、是533*320,这是系统为了使(10px,10px)能实际绘制到(15px,15px)设的骗局。26视图优化•多用wrap_content,fill_parent,dp•抛弃AbsoluteLayout•代码中不要使用pixel27内存优化Bitmap压缩•图片读取是OOM的常客•Dalvik给每个应用分配24M内存,真正可用于图片处理的已不多28内存优化变量•了解JIT(JustInTime)编译器的基本优化原则•反OO:避免getter和setter,直接访问field最高效。JIT还不能对getter做inlin

7、e,直接访问可提速7倍JIT:http://android-developers.blogspot.com/2010/05/dalvik-jit.htmlBenmark:http://code.google.com/p/dalvik/source/browse/#svn/trunk/benchmarks29内存优化变量•高效数组遍历•two()isfastest30内存优化JNI(JavaNativeInterface)有现成C/C++模块时可复用一定会提速?No!•Java-nativelinktime•JIT很难

8、对nativecode优化http://developer.android.com/guide/practices/design/jni.html31内存优化流存储•下载大文件时一定要有buffer32网络优化文本数据压缩•Deflate/Gzip(基础算法vs增加header和crc)•是压缩前数据大小的30%左右

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。