自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

固弘的专栏

积累创新的知识

  • 博客(75)
  • 资源 (1)
  • 收藏
  • 关注

原创 第十八篇 ANDROID的声音管理系统及服务

声音管理系统用来实现声音的输入和输出、声音的控制和路由等功能,包括主和各种音源的音量调节、声音焦点控制,声音外设的检测和状态管理,声音源输入和输出的策略管理、音效的播放、音轨设置和播放、录音设置和启动等功能。整个声音管理系统相关类图如下:主要由JAVA端的系统服务AudioService及两个本地服务声音输入输出策略管理服务AudioPolicyService

2014-03-14 19:10:58 11446 3

转载 谷歌创新法宝(也可说是成为伟大公司的法宝)

谷歌前任 CEO,施密特(Eric Shcmidt)这样讲述自己初识谷歌时受到震撼的经历:“当我最初来到谷歌时看到,创始人谢尔盖和拉里十分重视艺术家与工作的直接对话,这种行为让重要的创新自然而然地涌现出来。他们已经在谷歌里建成了一种管理风格与文化,促使艺术性的探索与创新不断成长。而我的工作,就是要尽自己的全力去维持这种氛围。”  谷歌就是这样鲜明地向人们展示了一个崭新时代的到来。

2013-09-03 09:25:07 1226

转载 周鸿祎:做产品体验先把自己切换到二傻子模式

我唯一能自吹的地方,就是本人在互联网里可能犯的错最多,挨的骂最多,然后也经历了很多失败,所以这样才有一些真实的感受。  建议大家把《定位》和《创新者的窘境》、《创新者的解答》这几本书放在身边反复读。你经历得越多,对这几本书的体会就越深。我过去几年经常翻看,每次都有新的心得。所以希望大家还是少花点时间刷微博,多花点时间读书。  我前几年都在谈微创新,为什么最近突然改口谈颠覆式创新呢?

2013-04-07 00:55:14 1325

转载 大胆、可怕又迷人的Graph Search:Facebook发现引擎的内幕

上周,Facebook 创始人扎克伯格和他的华裔夫人普莉希拉•陈的小狗—一条匈牙利牧羊犬要过生日了,夫妇俩决定给它办一场即兴晚会。在草拟客人名单时,他们首先想到的求助对象,自然是 Facebook。不过,梳理 Facebook 的朋友录此前一直是件令人沮丧的工作,虽然 Facebook 有搜索条,但是并不能根据特定条件迅速而精确地找到想要找的人。但是幸好扎克伯格赶上了Graph S

2013-04-07 00:53:59 1459

转载 产品设计核心要做到极致

产品经理要把自己当一个挑剔的用户。我们做产品的精力是有限的,交互内容很多,所以要抓最常见的一块。流量、用量最大的地方都要考虑。规范到要让用户使用的舒服。要在感觉、触觉上都有琢磨,有困惑要想到去改善。如鼠标少移动、可快速点到等等。  为产品做设计最难的是订优先级和先后次序。判断功能的好坏不能写个报告统计下流量证明是完了。这是非常错误的,我们要看用户是不是需要这个功 能。所以我希望我们的产品经理在

2013-04-07 00:49:04 1344

转载 产品经理类产品的探索之路

互联网行业相对于传统行业而言是虚拟数字产业,但二者却有相通之处:向用户提供产品。而互联网行业做产品、卖产品的过程,产品经理全程主导,贯穿始终。以产品为核心,以产品团队为核心的思维方式,正在影响着互联网从业人员。  产品经理类产品,其用户以产品经理为主,产品相关人员为辅。分享下我对产品经理类产品的探索之路。  产品形态探索  按照产品量级的思路,探索一下产品经理类产品的产品形态发展。

2013-04-07 00:46:36 1034

转载 移动Web开发的10个重要准则

移动设备的快速发展给用户带来了很大的便利,用户使用Android、iPhone和其它移动设备很容易接入互联网。最近的一项研究表明,超过6300万的用户使用移动设备访问不同的移动网站,这个数据预计到明年年底会达到2亿左右。由于人数在不断增长,所以产品经理和设计师们要及时追踪移动用户访问的移动网站,了解移动网站发展的最新动态。但说到底该如何良好恰当地追踪?这是每个产品经理和设计师都要认真思考的问题,在

2013-04-07 00:45:05 1315

转载 产品设计理应遵循哪些原则?

原小米科技产品经理 向华盛:原则1:用户界面应该是基于用户的心里模型,而不是基于工程实现模型。就是把后台本来很复杂的事情通过设计符合用户日常生活中常用的浏览方式或操作方式。其实这一点是设计师把生活中的细节和数据结合的凝聚点,用户的心理模型抓的越准,界面就会越优秀。原则2:培养用户使用情景的思维方式做设计。对于一个社交即时通讯产品,添加好友的功能是好友汇聚的来源,虽然米聊微信都绑定手机通讯录

2013-04-07 00:39:42 1714

转载 前谷歌工程团队负责人:如何打造一个完美的产品

一个产品能脱颖依靠的是执行力,而不是那些少得可怜的新思路。Niniane Wang曾带领过谷歌和微软的工程团队,在带领团队、管理项目有着丰富的经验。此次,他将自己的经验一一分享出来,并且对软件开发者提供了一些优秀的建议。曾有一位谷歌工程师想到了一个浏览器扩展的好点子。于是他展开工作并在几周内开发出原型,随后他在网上搜索是否已有类似的产品,结果不尽人意。他的想法在网上到处都是,甚至还有多种同概念

2013-04-07 00:34:53 1278

转载 不一样的产品思维

一、谨慎试错很多产品经理都强调互联网产品要快速试错,不用多完美,要先推出来试试看。但在张小龙看来,应该对产品有足够理解、对人性和社会的足够把握,才去做尝试,这样的试错才是最有效的。“比如说,我前面有10个点,我预计到9个会行不通,但我都去试。另一种方法是,我们就做一个点,然后这个点的成功概率会更大。微信里,我们用的是后者的方法。”其实微信也有试错失败的时候,但这些失败都不是

2013-04-07 00:33:27 1236

转载 产品经理必读的九步法

如果你是一位PM,正在跟随一位大拿,那证明你不仅是一位幸运儿,而且在产品设计上天资卓越,这篇文章可以供你参考。如果你还只是在普普通通的小公司朝九晚十,或者是在一个大公司的基层打杂,但你胸怀一个梦想,梦想用自己的产品改变世界,那这篇文章就是为你而写的。我在这里分享出来,希望对更多有梦想的PM有价值,希望能通过你的手让这个世界变得更美好。本文描述的产品设计“九步法”,主要框架来源于几个从无到有设计

2013-04-07 00:29:05 1701

原创 第十七篇 --ANDROID DisplayManager 服务解析一

ANDROID从版本4.2开始提供了一个显示管理服务DisplayManagerService,支持多种显示类型的多个显示器的镜像显示,包括内建的显示类型(本地)、HDMI显示类型以及支持WIFI Display 协议( MIRACAST),实现本地设备在远程显示器上的镜像显示。整个架构类图如下:显示管理服务通过DisplayManager提供对外接口,提供的接口包括如

2013-01-23 23:11:29 30507 11

原创 第十六篇 --Android服务之网络服务发现服务解析

自android 4.1 开始实现了一个网络服务的发现服务NsdService,其基于苹果的Bonjour服务发现协议,支持远程服务的发现和零配置。        Bonjour协议包括IP地址的自动分配、服务名称与地址的转换以及服务的发现三部分内容,ANDROID4.1借助第三方开源工程mDNSResponder实现了Bonjour协议的服务名称与地址的转换以及服务的发现等 Bonjou

2013-01-05 22:37:33 24801 8

翻译 八个吸引用户使用的应用设计技巧

移动设计不断为使用简单而努力。   开发者要在智能手机有限的空间发挥无限的创意和价值,这的确不是一件容易的事。为了使用户更有效地使用app,开发者的app必须要做到精简和直观。另外,开发者更要巧妙地引导用户去发现和使用app的功能,本文为开发者提供了一些小技巧。Tip#1:创建安装向导        如果你的app对用户输入依赖程度比较高,一个不错的办法是设置安装向导,在用户第

2012-12-31 09:02:21 1618

翻译 MacOS中 的 设计 模式

一 用 设计 模式来 简化你的应用          使用Objective-C编程 为应用添加特定行为的方式一般是通过接口 。你 可以通过 参数化一个超类的属性和行为或者以各种方式来修改它来创建一个已存在类的子类 。但也有其它更动态方式为应用 添加特定的行为,而不用使用派生方法 。这些动态的技术和方法基于设计模式。就像这篇 文章提到的,你可以在你的代码中通过适配设计模式来构造出更重用

2012-12-09 02:28:59 1615

翻译 为用户而设计 --苹果的用户体验设计思想

创建一个只是能够工作的应用 是不够的 。用户期待一个Mac应用 足够强大、直观和 吸引人。在你设计的应用的每一方面都要考虑用户体验,从你选择的特性到显示的指针 。     虽然用户可能不知道人机 接口设计准则,但他们能知道你的应用 什么时候遵循准则、什么时候没有遵循。     遵循在人机接口向导阐明的原则和约定能够为你的产品设计出卓越的用户接口和用户体验。     一个Mac应用的成功

2012-12-06 00:18:26 3436

翻译 UI 模式类之一----数据输入模式

一表单类       1)      宽松格式      问题:              用户需要快速的输入数据并能够自动解释用户的输入.      使用场景:               当太多的选择框、单选按钮和复选框造成用户进入系统的输入过程太复杂时。               当用户填充表单的时间比想完成的实际工作占用更多的时间。

2012-11-27 15:44:52 1971

翻译 图形和动画设计和编程模式

一  、  Layered Graphics 图形分层        情景                 图形程序经常需要实现图形之间的叠加。图形数据可能来自不同的数据源或使用不同的算法呈现。用户也可能需要在不同类型的可视图形数据间切换。                 而一个管理和呈现可视图形数据所有的不同组合的单类将导致该类复杂到难以维护。        方案

2012-10-30 01:31:30 2240

翻译 测试模式列表

一  AbstractTest /AbstractTestCases(抽象测试和抽象测试用例)问题        如何写一个能用来测试接口所有实现的针对接口或抽象类的测试包。方案        为每一个接口或抽象类写一个抽象测试类(AbstractTest),这个抽象测试应有一个创建对应接口类型的对象的抽象工厂方法FactoryMethod。        为接口的每个实现写一

2012-10-28 02:14:56 1639

翻译 Web站点设计的12种模式

一 Know Your Audience (明确受众)问题:         如何裁减网站的内容使之更紧凑?如何使你的网站信息更丰富、更有说服力或更有用?情景         网站是一种通讯工具,与错误的受众通讯将达不到预期的效果—如劝说十几岁青少年的内容对于有三个孩子的五十多岁的老父亲来说就是无聊的,反之亦然。因此网站的图形、书写语言和词汇、甚至导航都应由打算影响的受众决定。

2012-10-20 13:42:12 3241 1

翻译 两个安全模式

一  FacetPattern(侧面模式)                意图:限制一个接口来提供较少的authority,通常接口仅提供方法的子集或者参数的子集。               在面向能力编程(CapabilityOrientedProgramming)中Facets被作为一种安全模式,Facets符合最小权利原则(PrincipleOfLeastAuthority)

2012-10-14 17:47:43 1398

原创 软件模式的探讨和分类

建筑大师ChristopherAlexander说:模式是对某一情景(或者场景) 多次出现的问题和对应的解决方案的描述。而GOF(”四人帮”)针对面向对象软件领域经常出现的设计问题提出和描述了23个设计模式,并根据模式的意图分为对象创建用的创建型模式、由对象组合和封装构成的结构型模式、以及涉及算法和行为在对象间职责分配的行为型模式等三大类设计模式,主要用于解决OO软件设计的可扩展性即弹性方面的问题

2012-10-11 15:02:39 2096

原创 第十五篇 Android 的Backup服务管理机制与架构分析

Android2.2以后的备份服务功能可以允许用户备份应用数据到云存储中,当应用执行了工厂恢复服务或者转换到一个新的平台上时,如果备份的应用重新安装,系统就自动恢复原先备份的数据,这个过程对用户是完全透明的。GOOGLE目前为Android框架系统提供了一个云存储服务BackupTransportService和一个GOOGLE Backup Transport对象,不过要使用云存储,需要首先

2012-09-27 18:49:24 13451 1

原创 第十四篇 ANDROID的 BLUETOOTH 实现机制与架构

从ANDROID3.0开始BLUETOOTH  API提供了对Bluetooth profile协议的支持。目前ANDROID4.0 API提供了五种蓝牙无线接口规范(Bluetooth profile)的支持,用来在设备之间提供蓝牙通讯实现特定功能:包括 Headset和Hands-Freeprofile(实现蓝牙耳机功能),A2dpprofile(第二代蓝牙声音设备协议,用来在蓝牙设备之间

2012-09-21 22:05:51 16372 4

原创 第十三篇 Android 系统电话管理机制与架构二

四 SipPhone           如下是SipPhone实现相关类图。                     SipPhone对象虽然也派生自PhoneBase,但实现机制及实例化过程与其它Phone对象大大不同。          SipPhone对象的实例化通过PhoneFactory的makeSipPhone的接口调用SipPhoneFactory的makePhon

2012-09-16 02:33:55 5198 2

原创 第十二篇 Android 系统电话管理机制与架构

电话管理是Android 系统支持的重要的业务之一,提供接听电话,收发短信、电话薄、网络事件监听、读取用户信息等功能。      从下到上可以分为四层:硬件驱动层、RIL daemon层、Telephony框架实现层、 PHONE应用层,下层为上层提供服务,每层之间采用不同的通讯方式交互。RIL daemon层实现为单独的一个开机启动的进程(rild命令),通过AT命令硬件驱动层交互,Te

2012-09-16 02:03:14 9962 7

原创 第十一篇 ANDROID 系统网络连接和管理机制与架构

一  网络连接功能介绍      ANDROID 系统网络连接和管理服务由四个系统服务ConnectivityService、NetworkPolicyManagerService、NetworkManagementService、NetworkStatsService共同配合完成网络连接和管理功能,四个服务只有ConnectivityService、NetworkPolicyManagerS

2012-09-03 11:39:36 26969 3

原创 第十篇ANDROID的ActionBar及菜单机制

Action Bar是ANDROID应用用到的重要开发资源之一,Action Bar提供了一致的应用导航和视图切换方式,也提供了突出的和容易的以可预见的方式执行重要操作的方式。        Action Bar一般位于屏幕顶部,包括四个可操作区域:应用图标或LOGO区域,用于视图控制的Spinner下拉菜单或TAB控件区域,Action button(也称为Action Item)区

2012-08-25 18:22:03 8290

原创 第九篇 ANDROID包管理服务机制与架构

包管理服务( PackageManagerService)是ANDROID的系统服务之一,主要功能实现应用包的解析、安装、更新、移动、卸载等服务。        系统类图如下:                  PackageManagerService主要通过Installer、UserManager、AppDirObserver、Settings、DefaultContainerS

2012-08-18 20:14:09 6365

原创 第八篇 android 内容提供组件机制

内容提供组件提供了一个进程安全访问另一个进程数据的方法和接口,该接口对数据进行了封装,使客户端可以以一致的接口跨进程访问各种数据。       如下是ContentProvider的系统类图:                     图中左边部分是客户端部分,右边部分是处于另外进程的ContentProvider组件和内容提供的服务部分。整个系统采用的模式与MVC模式类似。

2012-08-10 19:13:16 2553

原创 第七篇 窗口系统机制之KEYGUARD机制

ANDROID的KEYGUARD相关类提供了屏幕锁屏等相关功能,虽然功能简单,但是相关的逻辑还是挺复杂的,要处理屏幕处于不同状态的情况,要监控各种事件(时间,电池,Sim状态,电话状态),因此GOOGLE还是对屏幕功能进行了细致的设计,架构上采用了中介模式、MVC模式等设计模式。系统类图如下:                    PhoneWindowManager、PowerManag

2012-08-08 15:05:11 3671

原创 第六篇 ANDROID窗口系统机制之显示机制与架构

ANDROID的显示系统是整个框架中最复杂的系统之一,涉及包括窗口管理服务、VIEW视图系统、SurfaceFlinger本地服务、硬件加速等。窗口管理服务与SurfaceFlinger本地服务都属于系统服务,客户端采用远程代理模式访问服务,而这部分机制在上一篇博文《窗口管理服务实现机制》已经分析过,本篇主要解析视图如何绘制相关的部分。窗口中显示的页面和控件以树的形式组织成一颗以主视图为根的视

2012-08-06 19:28:12 7467 3

原创 第三篇 android 应用开发模式之MVC模式及Observer模式

如果说模板模式是ANDROID框架的核心,提供了应用程序架构组件的基础,而Observer模式则提供了ANDROD架构连接件的基础,同时也是另外两个组件广播组件及内容提供者组件的实现基础,还是UI输入机制的基础。Observer模式在android应用程序及框架中普遍采用。Observer模式也称作发布/订阅模式,实现机理是消息发布/订阅模式的事件驱动模型:消息的生产者发布事件,而使用者订阅感

2012-08-06 19:09:34 3569 1

原创 第二篇 android应用开发模式之模板模式

Android提供了一个包含各种服务的应用框架, 为应用开发者提供了标准的应用程序开发方法,应用开发者只需通过四种组件的使用,实现组件提供的相关接口及提供应用用到的资源,布局及工程XML文件,最后打包成一个APK文件就可以完成应用程序的开发。        Android框架借鉴了J2EE框架的许多设计思想,框架提供完善的服务给服务者使用, 应用程序由一个个组件组成,通过组件的启动来启动应用程

2012-08-06 19:07:15 6204 2

原创 第一篇 android架构是如何满足设计目标的?

从google的初衷来看 Android 操作系统的目标是与苹果的移动操作系统竞争,因此目标市场定位于一是智能手机、平板电脑等移动终端,二是定位于 TV智能 终端及 其它智能消费终端,也就是富媒体富客户端设备。服务人群和涉众也就是相关的客户群体包括移动终端等厂商、开发人员、最终的消费用户三大类群体。        因此开发的操作系统要想成功必须满足三大利益相关方的利益,也就是系统实现的需求。

2012-08-06 19:02:35 3160 4

android的输入机制

整个输入系统包括服务端和客户端两部分,服务端部分主要完成输入设备事件的读取、事件的映射、事件的插入、事件的过滤、事件的拦截等功能;客户端部分主要完成事件向焦点窗口和焦点视图的派发。 输入系统整个架构采用的是管道过滤器模式(Pipe and Filter)架构模式。服务端的InputReader和InputDispatcher对象及客户端的InputQueue对象对应着过滤器构件,具有各自的输入、处理、输出单元,三者通过两个管道连接件连接到一起。

2013-04-09

空空如也

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

TA关注的人

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