排序:
默认
按更新时间
按访问量

Android性能优化之Splash页应该这样设计

目前SplashActivity的设计目前市场上的应用在启动时基本上都会先启动一个SplashActivity,作为一个欢迎界面,为什么这样设计呢? 个人总结有三个优点:1、可以给用户更好的体验比如:可以由后台动态的改变欢迎的图片,或者显欢迎xxx回来,新浪微博的就是这种交互。2、可以缩减App...

2016-01-17 00:18:28

阅读数:10661

评论数:19

Android性能优化之加快应用启动速度

应用的启动启动方式通常来说,在安卓中应用的启动方式分为两种:冷启动和热启动。 1、冷启动:当启动应用时,后台没有该应用的进程,这时系统会重新创建一个新的进程分配给该应用,这个启动方式就是冷启动。 2、热启动:当启动应用时,后台已有该应用的进程(例:按back键、home键,应用虽然会...

2016-01-14 22:51:55

阅读数:12799

评论数:9

Android性能优化之被忽视的优化点

对于性能优化这个知识点来说,实在是太广了,博主本人也一直非常关注这方面的学习,而对于性能优化来说它包括了非常非常非常多方面,比如:I/O的优化、网络操作的优化、内存的优化、数据结构的优化、代码层次的优化、UI渲染优化、CPU资源使用率的优化、异常处理的优化等等等等。。。本篇文章就博主本人的理解来讲...

2015-11-25 15:44:46

阅读数:17156

评论数:19

Android性能优化之常见的内存泄漏

前言对于内存泄漏,我想大家在开发中肯定都遇到过,只不过内存泄漏对我们来说并不是可见的,因为它是在堆中活动,而要想检测程序中是否有内存泄漏的产生,通常我们可以借助LeakCanary、MAT等工具来检测应用程序是否存在内存泄漏,MAT是一款强大的内存分析工具,功能繁多而复杂,而LeakCanary则...

2015-11-23 22:37:53

阅读数:23229

评论数:34

Android性能优化之使用线程池处理异步任务

说到线程,我想大家都不陌生,因为在开发时候或多或少都会用到线程,而通常创建线程有两种方式: 1、继承Thread类 2、实现Runnable接口 虽说这两种方式都可以创建出一个线程,不过它们之间还是有一点区别的,主要区别在于在多线程访问同一资源的情况下,用Runnable接口创建的线程可...

2015-11-17 16:06:14

阅读数:39757

评论数:33

我的第二个独立开发的邮箱类App—“简邮”(支持QQ、雅虎、阿里云、Outlook)

360手机市场地址:360市场其它市场还在审核,囧。。。为什么做这个App? 主要有两个原因 1、10月份正逢校招季,……当时和面试官介绍了这个APP 2、在苹果手机上看到一款内置的邮箱app支持多账户,收发邮件非常方便,于是想在Android上弄一个 怎样使用简邮首先,这是移动端...

2015-11-09 11:26:50

阅读数:5943

评论数:14

Android最佳实践之SystemBar状态栏全版本适配方案

前言自从MD设计规范出来后,关于系统状态栏的适配越受到关注,因为MD在5.0以后把系统状态栏的颜色改为可由开发者配置的,而在5.0之前则无法指定状态栏的颜色,所以这篇就说说使用Toolbar对系统状态栏的适配策略主流App的适配效果手Q在这方面适配非常好,将标题栏和状态栏合为一起了,和iOS效果一...

2016-02-18 11:28:30

阅读数:5857

评论数:5

关于生产者/消费者/订阅者模式的那些事

生产者/消费者模式简介用来干嘛的?生产者/消费者模式的产生主要目的就是为了解决非同步的生产与消费之间的问题。什么是非同步呢? 比如我刚刚生产了某个产品,而此时你正在打游戏,没空来取,要打完游戏来取,这就导致了我生产产品和你取产品是两个非同步的动作,你不知道我什么时候生产完产品,而我也不知...

2016-01-27 14:17:45

阅读数:2891

评论数:3

并发编程之ThreadLocal、Volatile、synchronized、Atomic关键字扫盲

前言对于ThreadLocal、Volatile、synchronized、Atomic这四个关键字,我想一提及到大家肯定都想到的是解决在多线程并发环境下资源的共享问题,但是要细说每一个的特点、区别、应用场景、内部实现等,却可能模糊不清,说不出个所以然来,所以,本文就对这几个关键字做一些作用、特点...

2016-01-21 10:25:28

阅读数:8508

评论数:6

Fresco图片框架内部实现原理探索

流行的网络框架目前流行的网络图片框架: Picasso、Universal Image Loader、Volley的(ImageLoader、NetworkImageView)、Glide和Fresco简明的介绍下(具体细节和功能可看源码和wiki): 其中Picasso和Universal ...

2016-01-04 18:38:21

阅读数:10725

评论数:13

Android之SharedPreferences内部原理浅析

SharedPreferences内部工作原理: 1、调用getSharedPreferences();创建一个SharedPreferences对象,其中会先判断是否存在对应xml文件,如果发现存在则会有一个预加载操作,这个操作是把xml文件的内容通过I/O操作和XmlUitl解析后存入一个m...

2015-12-04 17:23:50

阅读数:4337

评论数:0

Material Design Library 23.1.0的新变化与代码实战

Design Library出来已经快有一个月了,当时大概看了一下介绍这个新版本变化的译文,内容不多,给我印象最深的就是Percent lib、AppBarLayout 和NavigationView的变化,当然还有Design Lib的一些控件内部实现的变化没有介绍,从而使得在使用新版本的控件时...

2015-11-13 15:42:41

阅读数:4203

评论数:4

LocalBroadcastManager—创建更高效、更安全的广播

前言在写Android应用时候,有时候或多或少的需要运用广播来解决某些需求,我们知道广播有一个特性,就是使用sendBroadcast(intent);发送广播时,手机内所有注册了BroadcastReceiver的应用都可以在接收到这个广播的,并在BroadcastReceiver的onRece...

2015-11-10 17:45:59

阅读数:3645

评论数:5

版本控制—使用Gradle自动管理应用程序版本

我们在开发App时,通常在项目的Release阶段我们需要设置应用的版本号和版本名称,也就是设置下面两个属性 versionCode versionName 版本号其中versionCode的值是int类型,主要作用就是作为应用内部的版本编号,为版本升级提供唯一的标识,通常设为是自增的...

2015-11-07 13:10:35

阅读数:2875

评论数:0

Volley网络框架完全解析(使用篇)

在Android中,网络请求无非就这两种:HttpURLConnection和HttpClient( Apache),我们在使用时一般都会对它们进行一系列的封装,但是这过程不免有些繁琐,所以,Google官方也考虑到了这点,在2013年Google I/O大会上就推出了一个新的网络请求框架——Vo...

2015-10-13 11:23:58

阅读数:4078

评论数:4

设计模式之观察者模式

差不多一个月没更博了,主要是自己在写东西,今天写写Android开发中比较重要的观察者设计模式 所谓观察者模式,就是一个是被观察的对象,一个是观察者对象,通过建立联系,即被观察的对象被观察者观察了,而当被观察的对象内部数据发生了改变时候,就会及时通知观察者,进而更新数据的显示。举个栗子: 假如...

2015-10-13 09:29:02

阅读数:1034

评论数:0

Android开发你不知道的TIPS

1、Space space是Android 4.0中新增的一个控件,它实际上可以用来分隔不同的控件,其中形成一个空白的区域.这是一个轻量级的视图组件,它可以跳过Draw,对于需要占位符的任何场景来说都是很棒的2、ValueAnimator.reverse() 这个方法可以很顺利地取消正在运行的动画...

2015-10-04 15:44:40

阅读数:1323

评论数:0

ORM对象关系映射之使用GreenDAO进行CRUD操作

在Android中,我们都知道使用的数据库是SQLite,而使用这种原生的数据库非常繁琐,它对表的管理和进行CRUD操作都需要我们写sql语句,在进行多表关联的操作上,更是需要写一堆sql,而且维护起来也极其不便。所以ORM程序设计技术应用而生,它主要是用于实现面向对象编程语言里不同类型系统的数据...

2015-09-21 16:46:23

阅读数:3786

评论数:4

Android事件分发机制

【注】:这篇文章中的内容都以这张图来讲解分发机制,其中A、B、C都是ViewGroup,它们的层次关系为:A为根布局,B为二级子布局,C为三级子布局,其中C布局中包含一个Button按钮,即A包含B,B包含C,C包含Button。 好了,废话少说。先来讲下今天的三位主角吧。 1、dispat...

2015-09-17 08:58:33

阅读数:1635

评论数:0

ORM对象关系映射之GreenDAO自定义属性转换器PropertyConverter

在使用GreenDAO定义实体的属性时候,通常来说定义的实体属性名就是对应的表的字段名、实体中属性的类型(如Long、String等)就是表的字段名类型,但是我们难免会有不一样的需求,比如实体中我定义了一个Color类型的属性或者其它自定义类型的属性,而表的字段类型只有一些原始类型肯定是没有这些类...

2015-09-16 18:08:51

阅读数:2815

评论数:2

提示
确定要删除当前文章?
取消 删除
关闭
关闭