自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 收藏
  • 关注

原创 代理模式 Proxy Design Pattern

Proxy 代理模式Provide a surrogate or placeholder for another object to control access to it.Use an extra level of indirection to support distributed,controlled, or intelligent access.Add a wrapper a

2016-05-17 14:45:16 634

原创 ServiceStateTracker与RIL对象的交互

ServiceStateTracker与RIL对象的交互两种方式:ServiceStateTracker对象主动发起的ServiceStateTracker对象被动接收的1.被动接收RIL上报ServiceStateTracker对象和Phone对象有相同的生命周期,在建立时会调用RIL对象的registerForXXX和setOnXXX方法,完成7种类型注册:

2015-03-19 10:06:01 2742

原创 ServiceState学习

ServiceState类在framework/base工程下。实现了Parcelable接口。共包含4种服务状态和16中无线通信技术。

2015-03-17 13:38:32 1761

原创 一个简单的抽象工厂模式

抽象工厂模式引出了产品族的概念(Product family)给出下边的例子:       一个生产厂(富士康)能生产苹果的或者是谷歌的手机和笔记本电脑。苹果和谷歌是两个不同的产品族。手机和笔记本电脑是两个不同的产品类型。生产一个产品首先选择它的产品组,然后确定产品类型就能生产出来。具体代码://手机abstract class MobilePhone{}

2015-03-04 17:04:11 422

原创 一个简单的工厂方法模式

接着上一篇简单工厂模式的例子,这里给出一个工厂方法模式的例子:首先还是手机:interface MobilePhone{...}class IPhone7 implements MobilePhone{...}class IPhone7s implements MobilePhone{...}然后还是工厂类,用抽象类或者接口实现,因为它并不具体的生产实例:abstract cl

2015-03-04 16:34:10 449

原创 一个简单的工厂模式

工厂模式简单的JAVA实例:一个工厂生产手机:首先定义一个手机公共接口://所有手机的公共接口interface MobilePhone{    //获取手机信息    String getPhoneInfo();    //打电话    void makePhoneCalls();    //发短信    void sendShortMessage

2015-03-04 15:45:09 634

翻译 抽象工厂设计模式(Abstract Factory Design Pattern)

sourcemaking.com抽象工厂:提供一个接口来创建相关的或有依赖的对象们的家庭,而不用指明他们的具体类。一种层级结构封装了:许多可能的“平台”(比如窗口系统、操作系统、数据库等),还有构建了一套“产品”。new 操作在这里认为是有害的。

2015-03-04 10:33:20 614

转载 接受广播消息

《疯狂Android》一书学习笔记:接受广播消息        四大组建的一种,接受广播消息BroadcastReceiver,是一种全局的监听器。BroadcastReceiver简介        BroadcastReceiver用于接听Broadcast Intent,与启动Activity或Service类似,启动BroadcastReceiver也需要两部:创建

2015-02-17 09:33:21 660

转载 跨进程调用 Service(AIDL Service)

根据疯狂Android讲义学习:        AIDL Service 是一个跨进程通信IPC服务(Interprocess Communication),类似于JAVA的CORBA、RMI。AIDL Service 简介        和JAVA RMI类似,都需要先定义远程调用接口,然后为该接口提供一个实现类。        不同的是RMI会将对象返回给客户端,而AIDL则是

2015-02-16 10:02:46 406

转载 Android service学习

根据疯狂Android讲义一书学习:Service介绍Service作为安卓四大组建之一,也许要在AndroidManifest.xml中配置,并且根据属性指定可以被哪些Intent启动。Service和Activity来自相同基类Context,也可一调用getResoureces(),getContentResolver()等方法。Service的生命周期:

2015-02-15 14:54:09 410

翻译 处理Fragment配置变更

StackOerflow上经常看到类似如下的问题: 在设备配置变更时保持激活对象比如运行中的Threads,Sochets还有AsyncTasks的最好办法是什么?        本文讨论这个问题。首先讨论对于开发者来讲比较难的在Activity生命周期中的长运行后台线程问题。然后讨论两种解决方案。最终给出实例代码。配置变化和后台任务        首先一个问题是配置改变和Activi

2015-02-15 09:49:52 606

翻译 Avtivitys, Threads & Memory Leaks

Ref: http://www.androiddesignpatterns.com/2013/04/activitys-threads-memory-leaks.html       安卓开发中一个难点就是activity生命周期里的长时间运行任务可能造成的内存泄漏。看下面一段代码:/** * Example illustrating how threads persist

2015-02-13 14:02:54 398

转载 AMS启动Activity过程

Android应用程序框架层中的ActivityManagerService启动Activity的过程大致如下图所示:在这个图中,ActivityManagerService和ActivityStack位于同一个进程中,而ApplicationThread和ActivityThread位于另一个进程中。其中,ActivityManagerService是负责管理Activity的生命周期的

2015-02-13 12:08:01 1093

原创 Java 四种引用类型

先看javadoc自己的介绍:java.lang.ref.Reference:Provides an abstract class which describes behavior common to all reference objects. It is not possible to create immediate subclasses of Reference in additi

2015-02-12 17:56:52 409

翻译 Handler、Inner Class 怎么造成context泄漏的?

考虑下边这段代码:public class SampleActivity extends Activity { private final Handler mLeakyHandler = new Handler() { @Override public void handleMessage(Message msg) { // ... } }}

2015-02-12 16:33:27 392

翻译 Android 线程安排

REF:http://www.androiddesignpatterns.com/2014/01/thread-scheduling-in-android.html本文讲解如何在android里保证多线程的顺序,并且多线程在后台时不会造成程序没相应。OS里负责线程的是 Thread scheduler. Android 系统 Thread Scheduler 考虑两个因素 va

2015-02-12 15:25:37 507

翻译 contentProvider不是线程安全的

A common source of confusion when implementing ContentProviders is that of thread-safety.We all know that any potentially expensive query should be asynchronous so as not to blockthe UI thread, but wh

2015-02-12 15:15:04 3068

翻译 用Logs进行基础安卓debugging

就像大多数软件工程领域,debugging在安卓开发中扮演重要的角色。正确的设置你的应用debugging能够减少大量时间和困惑。不幸的事,在我的经验看来,没有很多初学者学着正确的用安卓SDK自带的工具类。除非你是以为有经验的开发者,这是我个人的看法,安卓debugging应该按照一套模式。因为以下几点原因会带来一些好处:它能帮你在代码间预见bugs。为你的开发工作区设立debugging

2015-02-12 14:30:06 492

转载 LoaderManager

ref: http://blog.csdn.net/murphykwu/article/details/35287883将Loaders看成一个简单、字包含的对象。该对象特性包括:1.在一个单独线程载入数据;2.监测底层数据源,当探测到有改变时就更新或者重新查询。LoaderManager是什么?简单的理解是,LoaderManager用来负

2015-02-12 11:37:48 495

原创 test code

test:

2015-02-11 17:40:45 405

原创 AsyncTask 异步任务

参考疯狂Android讲义3.6章:AsyncTask 抽象类,三个泛型参数:Params:启动任务执行的输入参数类型;Progress:后台任务完成的进度值的类型;Result:后台任务执行后返回的结果类型;不需要指定类型的话用Void。必须要继承重写的方法是:doInBackground(Params... param):后台线程要完成的任务;可

2015-02-11 15:38:40 320

转载 Git和Repo管理使用简要介绍

在Linux平台下进行Android系统项目开发时,需要git或repo管理。  一. Git和Repo的区别:       1. Git:Git是一个开源的分布式版本控制系统,用以有效、高速的处理从很小到非常大的项目版本管理。       2. Repo: Repo是谷歌用Python脚本写的调用git的一个脚本。主要是用来下载、管理Android项目的软件仓库(也就是说Repo是用

2015-01-13 16:57:07 310

转载 git tutorial

创建新仓库创建新文件夹,打开,然后执行 git init以创建新的 git 仓库。检出仓库执行如下命令以创建一个本地仓库的克隆版本:git clone /path/to/repository 如果是远端服务器上的仓库,你的命令会是这个样子:git clone username@host:/path/to/repository

2015-01-13 16:39:08 331

转载 一个经典例子让你彻彻底底理解java回调机制

转帖请注明本文出自xiaanming的博客(http://blog.csdn.net/xiaanming/article/details/17483273)所谓回调:就是A类中调用B类中的某个方法C,然后B类中反过来调用A类中的方法D,D这个方法就叫回调方法,这样子说你是不是有点晕晕的,其实我刚开始也是这样不理解,看了人家说比较经典的回调方式:Class A实现接口CallBa

2015-01-13 13:58:57 309

转载 Android Activity和Intent机制学习笔记

Ref: http://www.cnblogs.com/feisky/archive/2010/01/16/1649081.htmlActivityAndroid中,Activity是所有程序的根本,所有程序的流程都运行在Activity之中,Activity具有自己的生命周期(见http://www.cnblogs.com/feisky/archive/2010/01

2015-01-13 13:36:59 256

转载 Android Intent实现Activity之间跳转并传值

Ref: http://www.linuxidc.com/Linux/2011-04/34228.htmAndroid用Intent这个特殊类实现在Activity与Activity之间的切换。通过解析各种intent,从一个屏幕导航到另一个屏幕是很简单的。当向前导航时,activity将会调用 startActivity(IntentmyIntent)方法。例子效果如下:      

2015-01-13 13:33:54 586

转载 苹果Swift编程语言入门教程【中文版】

苹果Swift编程语言入门教程【中文版】   目录   1 简介  2 Swift入门  3 简单值  4 控制流  5 函数与闭包  6 对象与类  7 枚举与结构   1 简介   Swift是供iOS和OS X应用编程的新编程语言,基于C和Objective-C,而却没有C的一些兼

2014-06-11 10:41:02 509

空空如也

空空如也

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

TA关注的人

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