文章分类 - [转载]
摘要:static修饰的静态变量,使用很方便,在不同的类和包中都可以使用,在虚拟机中单独占用内存,没错,这些都是它们的优点,不过在项目上线后,才发现static有一些不太好的地方。 在查看项目的崩溃信息时,发现很多地方莫明的出现空指针异常的错误,经过排查,发现可能就是static的问题。我们在项目中,将用户的信息也就是User对象保存成了一个静态变量,而在报错的地方,也都发现有使用过这种变量,因此,可以大致推断出与这种保存的方式有一定的联系。同时,有不少用户反映在打开应用的情况下,接个电话或者长时间待机后,再回到应用也会出现崩溃的现象,而这些崩溃都与静态变量的空指针有关系。 如此来说的话,st...
阅读全文
摘要:大家都知道,现在安装Android系统的手机版本和设备千差万别,在模拟器上运行良好的程序安装到某款手机上说不定就出现崩溃的现象,开发者个人不可能购买所有设备逐个调试,所以在程序发布出去之后,如果出现了崩溃现象,开发者应该及时获取在该设备上导致崩溃的信息,这对于下一个版本的bug修复帮助极大,所以今天就来介绍一下如何在程序崩溃的情况下收集相关的设备参数信息和具体的异常信息,并发送这些信息到服务器供开发者分析和调试程序。源码下载地址:http://download.csdn.net/detail/weidi1989/4588310我们先建立一个crash项目,项目结构如图:在MainActivit
阅读全文
摘要:Android学习笔记之AndroidManifest.xml文件解析一、关于AndroidManifest.xmlAndroidManifest.xml 是每个android程序中必须的文件。它位于整个项目的根目录,描述了package中暴露的组件(activities, services, 等等),他们各自的实现类,各种能被处理的数据和启动位置。 除了能声明程序中的Activities, ContentProviders, Services, 和Intent Receivers,还能指定permissions和instrumentation(安全控制和测试)二、AndroidManifes
阅读全文
摘要:自己一直很喜欢Android开发,就如博客副标题一样,我想做个好的App。在摸索过程中,GitHub上搜集了很多很棒的Android第三方库,推荐给在苦苦寻找的开发者,而且我会不定期的更新这篇文章。本文的其他贡献者:____sky____感谢~我的GitHubAndroid下的优秀开发库数不胜数,在本文中,我列举的多是开发流程中最常用的一些。如果你还想了解更多的Android开源库,可以查看我的GitHubStar,过滤Java选项,每一个库都是我认真查看或者编译运行的,希望对你产生帮助。一、兼容类库1.ActionBarSherlock: Action Bar是Android 3.0后才开始
阅读全文
摘要:排名不分先后CSDN博文精选:Android系列开发博客资源汇总很多已经和下面的有了重复老罗的Android之旅(CSDN)《Android系统源代码情景分析》一书的作者,研究系统源码。【核心分析】maxleng的专栏又一位Android核心分析,不过已经不在更新了Android中文Wiki提供Android的中文api,还有其他一些开源项目Android开发高手进阶教程农民伯伯 – 博客园大名鼎鼎啊,没有听过,你是不是学Android的,同学Android学习指南每一讲你都会有收获谦虚的天下 – 博客园介绍了很多项目,亮点是Android的设计模式Android代码片段很多参考的代码片段AP
阅读全文
摘要:随着移动平台的发展和其应用的不断改善,质量成为决定成败的关键。用户要求他们选择安装的应用响应快、性能好,如果某个应用不能提供卓越的功能和稳定的用户体验,那这样的应用注定会被很快卸载。尽管现在Android智能手机和平板电脑的运行速率越来越快,但开发者仍需牢记,应用的运行环境仍受到电池和处理器等诸多资源的限制。以下是如何为应用“瘦身”的十条建议,以便能在当前和以后的所有Android设备都能运行出最佳效果。1)首先要有良好的编码习惯一个优秀的开发者应该善于运用常识、完善的算法和标准设计模式。要有资源意识,打开了就要记得关闭,尽量做到晚获取,早释放。这些由来已久的编码准则同样适用Android应用
阅读全文
摘要:针对屏幕上的一个View控件,Android如何区分应当触发onTouchEvent,还是onClick,亦或是onLongClick事件?在Android中,一次用户操作可以被不同的View按次序分别处理,并将完全响应了用户一次UI操作称之为消费了该事件(consume),那么Android是按什么次序将事件传递的呢?又在什么情况下判定为消费了该事件?搞清楚这些问题对于编写出能正确响应UI操作的代码是很重要的,尤其当屏幕上的不同View需要针对此次UI操作做出各种不同响应的时候更是如此,一个典型例子就是用户在桌面上放置了一个Widget,那么当用户针对widget做各种操作时,桌面本身有的时
阅读全文
摘要:关于动画的实现,Android提供了Animation,在Android SDK介绍了2种Animation模式:1. Tween Animation:通过对场景里的对象不断做图像变换(平移、缩放、旋转)产生动画效果,即是一种渐变动画;2. Frame Animation:顺序播放事先做好的图像,是一种画面转换动画。动画类型下面先来看看Android提供的动画类型。Android的animation由四种类型组成在XML文件中:alpha 渐变透明度动画效果scale 渐变尺寸伸缩动画效果translate 画面转换位置移动动画效果rotate 画面转移旋转动画效果在Java 源码中定义了相应
阅读全文
摘要:android系统中的每个ViewGroup的子类都具有下面三个和TouchEvent处理密切相关的方法:1)public boolean dispatchTouchEvent(MotionEvent ev) 这个方法用来分发TouchEvent2)public boolean onInterceptTouchEvent(MotionEvent ev) 这个方法用来拦截TouchEvent3)public boolean onTouchEvent(MotionEvent ev) 这个方法用来处理TouchEvent注意:不是所有的View的子类,很多教程都说的是所有的View的子类,只有...
阅读全文

浙公网安备 33010602011771号