自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(64)
  • 问答 (1)
  • 收藏
  • 关注

翻译 Android开发心得整理

原文链接:https://medium.com/@laanayabdrzak/android-development-some-of-the-best-practices-27722c685b6a#.x3b8wsvz9在开发了几个项目之后我决定写篇文章分享一下一路走来的经验教训。在使用任何第三方库之前都要三思,这件事非常严肃。除非必须,不要使用数据库。你可以尝试使用

2016-03-29 09:10:46 532

原创 SharedPreferences使用详解

获取SharedPreferences的两种方式:1 调用Context对象的getSharedPreferences()方法2 调用Activity对象的getPreferences()方法两种方式的区别:调用Context对象的getSharedPreferences()方法获得的SharedPreferences对象可以被同一应用程序下的其他组件共享.

2016-03-21 18:55:21 7513

转载 Android 6.0(API级别23)包括各种系统变化和API的行为变化

随着新的特性和功能,Android 6.0(API级别23)包括各种系统变化和API的行为变化。本文强调一些关键的变化,你应该理解和考虑在你的应用程序。如果你有以前发表的Android应用程序,请注意,这些变化在影响你的应用程序平台。       1.运行时的权限       这个版本引入了一个新的权限模型,用户现在可以在运行时直接管理应用程序的权限。这个模型提供了改进的可见性和控制用

2016-03-16 08:52:07 2167

转载 Android中跨进程通讯的4种方式

转自:http://www. androidsdn.com/article/show/137由于android系统中应用程序之间不能共享内存。因此,在不同应用程序之间交互数据(跨进程通讯)就稍微麻烦一些。在android SDK中提供了4种用于跨进程通讯的方式。这4种方式正好对应于android系统中4种应用程序组件:Activity、Content Provider、Broadcast和

2016-03-10 13:21:03 450

转载 Android设计模式系列--模板方法模式

模板方法,和单例模式是我认为GOF的23中最简单的两种模式。但是我个人对模板方法的经典思想特别推崇,虽然模板方法在大对数情况下并不被推荐使用,但是这种通过父类调用子类的方法,使用继承来改变算法的一部分,是面向对象的一种基本认识。打比方说父亲有很多理想,就行医救人吧,但是父亲医术不行,只能靠儿子,儿子长大后遵从父亲大志,春风拂面,妙手回春,实现了父亲的理想,儿子做的事情早在出生前就定下来了,

2016-03-10 10:34:32 339

转载 Android设计模式系列--观察者模式

观察者模式,是一种非常常见的设计模式,在很多系统中随处可见,尤其是涉及到数据状态发生变化需要通知的情况下。本文以AbstractCursor为例子,展开分析。观察者模式,Observer Pattern,是一个很实用的模式,本人曾经接触到的各种平台以及曾经参与项目中打印模板解释器中都用到了此模式。1.意图定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它

2016-03-10 10:33:38 304

转载 Android设计模式系列--原型模式

CV一族,应该很容易理解原型模式的原理,复制,粘贴完后看具体情况是否修改,其实这就是原型模式。从java的角度看,一般使用原型模式有个明显的特点,就是实现cloneable的clone()方法。原型模式,能快速克隆出一个与已经存在对象类似的另外一个我们想要的新对象。1.意图用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。热门词汇:克隆 深拷贝 浅拷贝

2016-03-10 10:32:50 317

转载 Android设计模式系列-适配器模式

对于android开发者来说起,适配器模式简直太熟悉不过,有很多应用可以说是天天在直接或者间接的用到适配器模式,比如ListView。ListView用于显示列表数据,但是作为列表数据集合有很多形式,有Array,有Cursor,我们需要对应的适配器作为桥梁,处理相应的数据(并能形成ListView所需要的视图)。正是因为定义了这些适配器接口和适配器类,才能使我们的数据简单灵活而又正确的显

2016-03-10 10:31:57 459

转载 Android设计模式系列--工厂方法模式

工厂方法模式,往往是设计模式初学者入门的模式,的确,有人称之为最为典型最具启发效果的模式。android中用到了太多的工厂类,其中有用工厂方法模式的,当然也有很多工厂并不是使用工厂方法模式的,只是工具管理类。今天以ThreadFactory举例说明一下简单工厂模式和工厂方法模式。 工厂方法模式,Factory Method,简单的方式,不简单的应用。1.意图定义一个用于创建

2016-03-10 10:31:13 321

转载 Android设计模式系列-单例模式

单例模式,可以说是GOF的23种设计模式中最简单的一个。这个模式相对于其他几个模式比较独立,它只负责控制自己的实例化数量单一(而不是考虑为用户产生什么样的实例),很有意思,是一个感觉上很干净的模式,本人很喜欢这个模式。android中很多地方都用到了单例模式,本文以输入法管理者InputMethodManager为例,展开分析。单例模式,Singleton Pattern,

2016-03-10 10:30:24 357

转载 Android设计模式—策略模式

1、策略模式概念定义一系列算法,把他们独立封装起来,并且这些算法之间可以相互替换。策略模式主要是管理一堆有共性的算法,客户端可以根据需要,很快切换这些算法,并且保持可扩展性。策略模式的本质:分离算法,选择实现。2、策略模式实现下面针对策略模式说一个小型的实现例子,个人觉得学习设计模式,最好的方法是看看设计模式概念,然后先看看简单的模式实现的例子。策略模式实现起来,主

2016-03-10 10:29:13 340

转载 Android设计模式系列-组合模式

Android中对组合模式的应用,可谓是泛滥成粥,随处可见,那就是View和ViewGroup类的使用。在android UI设计,几乎所有的widget和布局类都依靠这两个类。组合模式,Composite Pattern,是一个非常巧妙的模式。几乎所有的面向对象系统都应用到了组合模式。1.意图将对象View和ViewGroup组合成树形结构以表示"部分-整体"的层次结构(View

2016-03-10 10:27:54 381

转载 Android 设计模式总结

简介项目开发中发现问题、解决问题这个过程中会出现很多问题,比如重复出现、某个问题的遗留,这些问题的本质就是设计模式。今天记录设计模式的知识点。内容在java以及其他的面向对象设计模式中,类与类之间主要有6种关系,他们分别是:依赖、关联、聚合、组合、继承、实现。它们的耦合度依次增强。依赖关系:对于两个相对独立的对象,当一个对象负责构造另一个对象的实例,或者依赖另一

2016-03-10 10:24:01 720

转载 Android Studio下JNI应用

最近在将一个小应用从eclipse开发迁移到android studio,程序中有native代码实现,在eclipse是靠Android.mk这么个mk文件来组织编译的,但到android studio上就不行了,因其是靠gradle组织,所以makefile里的配置要转换为build.gradle里的语句(尽管实际上gradle也是组织一个mk文件),同时在迁移过程中遇到了一些问题,这里记录一

2016-03-09 11:04:55 564

原创 Gradle的简介与安装

本博客对Gradle进行一个简单的介绍,以及它的安装。Gradle介绍Gradle是一个基于JVM的构建工具,它提供了:像Ant一样,通用灵活的构建工具可以切换的,基于约定的构建框架强大的多工程构建支持基于Apache Ivy的强大的依赖管理支持maven, Ivy仓库支持传递性依赖管理,而不需要远程仓库或者是pom.xml和ivy.xml配置文件。对Ant

2016-03-08 18:04:26 445

转载 Android 开发效率工具,开发自测相关,测试工具,开发及编译环境,其他

主要介绍和Android开发工具和测试工具相关的开源项目。一、开发效率工具Parceler通过注解及工具类自动完成实体类 Parcelable及值传递项目地址:https://github.com/johncarl81/parcelerJson2Java根据JSon数据自动生成对应的Java实体类,还支持Parcel、Gson Annotations对应代码

2016-03-08 12:08:05 702

转载 Android M新特性Doze and App Standby模式详解

Optimizing for Doze and App Standby1.从Android6.0开始,Android提供了两种省电延长电池寿命的功能:Doze和App Standby;2.表现形式:当设备没有连接到电源,设备进入Doze模式时,系统将通过延迟最近用户没有使用的应用程序的后台CPU运作及网络活动,让应用程序处于App Standby状态,以此来减少

2016-03-08 09:42:16 799

转载 Android Studio使用Lint进行代码检查

Android Studio目前已经更新到1.4版本,它作为Google官方推荐的IDE,功能非常强大,其中提供了一套静态代码分析工具,它可以帮助我们检查项目中存在的问题,让我们更有规范性的开发App。它可以检查出:xml文件中是否存在hardcode硬编码、unused resources没有使用到的资源、probable bug可能的bug等等。那么现在我们来测试使用它看看:And

2016-03-07 17:07:57 1271

转载 推荐几款实用的Android Studio 插件

原文出处:http://www.jianshu.com/p/6f5f818afe4b 1、Android Butterknife Zeleznyandroid-butterknife-zelezny 是根据butterknife定制的一款插件,能够方便快速初始化,对于我来说是开发必备,本人也对此插件进行了一些优化,个人感觉用起来更爽 ,博客地址:ButterknifePlugin

2016-03-07 16:38:13 517

原创 Android APP长期运行于后台,重启后如何避免异常

首先来介绍onSaveInstanceState() 和 onRestoreInstanceState() 。关于这两个方法,一些朋友可能在Android开发过程中很少用到,但在有时候掌握其用法会帮我们起到比较好的效果。尤其是在应用程序在不知道的情况下退出后,如何实现其数据保存的功能。先来让我们看下这两个方法的有什么样的作用。  1. 基本作用:   Activity的 o

2016-03-07 15:36:21 8911

转载 使用RxBinding处理控件异步调用

RxBinding是Rx中处理控件异步调用的方式, 也是由Square公司开发, Jake负责编写. 通过绑定组件, 异步获取事件, 并进行处理. 编码风格非常优雅. 让我来讲解一下如何使用, 本文含有代码示例.Github下载, 关注RxBinding部分, 其余参考.1. 依赖除了RxJava, 再添加RxBinding的依赖. // RxBind

2016-03-07 13:50:37 527

转载 LeakCanary: 让内存泄露无所遁形

java.lang.OutOfMemoryError at android.graphics.Bitmap.nativeCreate(Bitmap.java:-2) at android.graphics.Bitmap.createBitmap(Bitmap.java:689) at com.squareup.ui.SignView.createSi

2016-03-07 12:39:52 522

转载 给 Android 开发者的 RxJava 详解

前言我从去年开始使用 RxJava ,到现在一年多了。今年加入了 Flipboard 后,看到 Flipboard 的 Android 项目也在使用 RxJava ,并且使用的场景越来越多 。而最近这几个月,我也发现国内越来越多的人开始提及 RxJava 。有人说『RxJava 真是太好用了』,有人说『RxJava 真是太难用了』,另外更多的人表示:我真的百度了也谷歌了,但我还是想问: R

2016-03-07 10:02:22 489 2

转载 Android相机开发那些坑

最近我负责开发了一个跟Android相机有关的需求,新功能允许用户使用手机摄像头,快速拍摄特定尺寸(1:1或3:4)的照片,并支持在拍摄出的照片上做贴纸相关的操作。由于之前没有接触过Android相机开发,所以在整个开发过程中踩了不少坑,费了不少时间和精力。这篇文章总结了Android相机开发的相关知识、流程,以及容易遇到的坑,希望能帮助今后可能会接触Android相机开发的朋友快速上手,节省时间

2016-03-07 09:47:35 967

转载 安卓App热补丁动态修复技术介绍

1.背景       当一个App发布之后,突然发现了一个严重bug需要进行紧急修复,这时候公司各方就会忙得焦头烂额:重新打包App、测试、向各个应用市场和渠道换包、提示用户升级、用户下载、覆盖安装。有时候仅仅是为了修改了一行代码,也要付出巨大的成本进行换包和重新发布。       这时候就提出一个问题:有没有办法以补丁的方式动态修复紧急Bug,不再需要重新发布App,不再需要用户

2016-03-07 09:44:58 358

转载 Android应用架构

Android开发生态圈的节奏非常之快。每周都会有新的工具诞生,类库的更新,博客的发表以及技术探讨。如果你外出度假一个月,当你回来的时候可能已经发布了新版本的Support Library或者Play Services我与Ribot Team一起做Android应用已经超过三年了。这段时间,我们所构建的Android应用架构和技术也在不断地演变。本文将向您阐述我们的经验,错误以及架构变

2016-03-07 09:43:03 279

原创 在2016年必火的这些 Android 技术

原文转自:http://mp.weixin.qq.com/s?__biz=MzAwNjE5MzA0NQ==&mid=402079389&idx=1&sn=6823b23c996c5c54c2bfaa03961d06ff&scene=0#wechat_redirect2016年,这些 Android 技术必火在Android开发中,新技术不断涌现。对于GitHub上如此众多的

2016-03-04 09:43:21 298

转载 2015年十大热门Android开源新项目

2015即将结束,又到了大家喜闻乐见的年终盘点时刻啦,今天给大家盘点一下2015年Android开发领域新出现的10大热门开源项目。数据来自于GitHub搜索,创建时间自2015年1月1日开始的新项目才能入围,因此一些创建时间较早的诸如RxJava等优秀项目不在榜上,排名规则是best match,欢迎大家一起吐槽。10. Material-Animations它是一款实现了各种M

2016-03-04 09:39:26 468

转载 15 个必知的 Android 开发者选项

Android开发者选项,看起来很简单的事情,其实很多同学对它了解得不够,Google用心良苦得为我们设计了这么多小开关都是有它的作用的,今天也花了点时间,过了一遍全部的30多个开关,从中整理出15个对日常Android开发比较有帮助的选项。需要指出的是,不同的ROM对开发者选项的支持不一样,精简掉一些很正常,我下面提到的都是官方支持的功能,当然不同的官方版本支持程度也不一样,你手

2016-03-04 09:36:23 457

转载 android日常开发总结的技术经验60条

1. 全部Activity可继承自BaseActivity,便于统一风格与处理公共事件,构建对话框统一构建器的建立,万一需要整体变动,一处修改到处有效。2. 数据库表段字段常量和SQL逻辑分离,更清晰,建议使用Lite系列框架LiteOrm库,超级清晰且重心可以放在业务上不用关心数据库细节。3. 全局变量放全局类中,模块私有放自己的管理类中,让常量清晰且集中.4. 不要相信

2016-03-04 09:34:10 266

转载 10 条提升 Android 性能的建议

原文  https://realm.io/cn/news/droidcon-farber-improving-android-app-performance/ About the Speaker: Boris Farber每个人都知道一个 App 的成功,更这个 App 的性能体验有着很密切的关系。但是如何让你的 App 拥有极致性能体验呢?在 DroidCon N

2016-03-04 09:31:57 374

原创 自定义ActionBar的高度、标题与菜单中的文字样式

自定义ActionBar高度通过actionBarSize设定了ActionBar的高度 50dp/item>自定义标题文字样式标题样式是ActionBar样式的一部分,所以要先定义ActionBar的样式50dp/item> @style/CustomActionBar然后在ActionBar的样式中通过android:titleTex

2016-03-03 14:00:48 2069

原创 Android中Navigation Bar遮挡PopupWindow的解决方法

最近遇到了一个问题,关于Navigation Bar遮挡PopupWindow的问题,问题不难,粗略做一点总结。现象描述问题应该出现在5.0 Lollipop版本及以上遮挡的现象如下图,Navigation Bar位于了PopupWindow的上层,明显是一种问题。我的实现代码12345678priva

2016-03-03 13:21:21 5138 1

转载 Google为何这样设计OnSharedPreferenceChangeListener

之前使用OnSharedPreferenceChangeListener,遇到了点小问题,就是有些时候OnSharedPreferenceChangeListener没有被触发。最近花了点时间研究了一下,小做整理。本文将会介绍监听器不被触发的原因,解决方法,以及其中隐含的一些技术细节。问题再现OnSharedPreferenceChangeListener是Android中Shar

2016-03-03 13:18:36 326

转载 Android性能优化之AsyncTask

AsyncTask是一个很常用的API,尤其异步处理数据并将数据应用到视图的操作场合。其实AsyncTask并不是那么好,甚至有些糟糕。本文我会讲AsyncTask会引起哪些问题,如何修复这些问题,并且关于AsyncTask的一些替代方案。AsyncTask从Android API 3(1.5 Cupcake)开始,AsyncTask被引入用来帮助开发者更简单地管理线程。实际上在A

2016-03-03 13:14:13 1349

转载 Android应用开发性能优化完全分析

原文地址:http://blog.csdn.net/yanbober 1 背景其实有点不想写这篇文章的,但是又想写,有些矛盾。不想写的原因是随便上网一搜一堆关于性能的建议,感觉大家你一总结、我一总结的都说到了很多优化注意事项,但是看过这些文章后大多数存在一个问题就是只给出啥啥啥不能用,啥啥啥该咋用等,却很少有较为系统的进行真正性能案例分析的,大多数都是嘴上喊喊或者死记住规则而已

2016-03-03 12:59:16 1157

转载 Android性能优化之Activity 泄漏

随着移动互联网的发展,android app开发越发火爆。大家都知道一个app的成功与否,与app的性能体验密不可分。如果一个app打开时间长、滑动不流畅等等,那么相信不管你的产品多么棒,运营多么牛叉,也不会获得用户的青睐。因此app的开发中,提升性能尤其重要。    当然,从事android开发的童鞋应该都知道app性能提升的重要性,但难点在于如何提升android  a

2016-03-03 12:05:29 635

转载 Android布局优化之Merge、Include、ViewStub使用与源码分析

在开发中UI布局是我们都会遇到的问题,随着UI越来越多,布局的重复性、复杂度也会随之增长。Android官方给了几个优化的方法,但是网络上的资料基本上都是对官方资料的翻译,这些资料都特别的简单,经常会出现问题而不知其所以然。这篇文章就是对这些问题的更详细的说明,如果有什么不对的也希望高人指出。include首先用得最多的应该是include,按照官方的意思,include就是为了解

2016-03-03 11:56:36 681

转载 [Android 性能优化系列]布局篇之通过<include>复用布局

原文地址:http://developer.android.com/training/improving-layouts/reusing-layouts.html很多时候,我们都会用到类似的布局,既然如此,我们不妨将相同布局整体抽出来,单独作为一个布局文件使用,这样我们就避免了在多个文件中反复书写同样地代码,并且当我们需要修改的时候,也只需要修改一个地方就好了。虽然安卓为我们提

2016-03-03 11:49:17 484

转载 [Android 性能优化系列]布局篇之减少你的界面层级

原文地址:http://developer.android.com/training/improving-layouts/optimizing-layout.html复杂的布局,既会提高我们的设计难度,也会降低我们的代码效率,因此,不放多使用一下相对布局什么的。大家写布局文件的时候都会认为只要使用基本布局能够到达高效的结果,其实这是错的。你要知道你添加到你应用中的每一个控件和布

2016-03-03 11:47:33 1060

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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