上一页 1 ··· 19 20 21 22 23 24 25 26 27 ··· 51 下一页
摘要: 如果需要服务跟远程进程通信,那么就可以使用Messenger对象来给服务提供接口。这种技术允许你在不使用AIDL的情况下执行进程间通信(IPC)。以下是信使(Messenger)对象的使用概要:1.服务端实现的一个处理器(Handler接口),这个处理器针对每次来自客户端的调用接收一次回调;2.这个处理器被用于创建一个信使对象(Messager)(这个信使对象要引用这个处理器);3.信使对象创建一个创建一个服务端从onBind()方法中返回给客户端的IBinder对象;4.客户端使用这个IBinder对象来实例化这个信使对象(信使引用了服务端的处理器),客户端使用这个信使给服务端发送Messa 阅读全文
posted @ 2012-02-28 19:53 移动应用开发 阅读(371) 评论(0) 推荐(0) 编辑
摘要: 如果你只在应用程序的局部使用服务,并且不需要跨进程工作,那么你能够实现自己的Binder类,用它直接给你的客户端提供访问服务中公共方法的能力。注意:通常,客户端和服务端只是在同一个应用和进程中工作,例如,对于一个要良好工作的播放音乐的应用程序,就需要把在后台工作的播放音乐的服务与应用自己的一个Activity绑定。以下是建立绑定类型服务的步骤:1.在服务中,使用以下方法之一创建Binder实例: A.包含客户端能够调用的公共方法; B.返回当前服务的实例,它有客户端能够调用的公共方法; C.或者返回一个带有客户端能够调用的公共方法的被服务持有的另一个类。2. 从onBind()回调方法中返回这 阅读全文
posted @ 2012-02-28 19:49 移动应用开发 阅读(290) 评论(0) 推荐(0) 编辑
摘要: 创建具有绑定能力的服务时,必须提供一个IBinder对象,它用于给客户端提供与服务端进行交互的编程接口。有三种方法能够定义这个接口:1.继承Binder类如果你的服务是你的应用程序的私有服务,并且跟客户端运行在同一个进程中,那么就应该通过继承Binder类来创建你的接口,并且佛从onBind()方法中返回这个接口的一个实例。客户端接收这个Binder对象,并且能够使用这个对象直接访问Binder类中实现的或Service中的公共方法。当你的服务只是在后台给你自己的应用程序工作时,这是首选技术。不使用这种方法创建服务接口的唯一原因是因为你的服务要其他应用程序或跨进程使用。2.使用信使(Messe 阅读全文
posted @ 2012-02-28 19:45 移动应用开发 阅读(538) 评论(0) 推荐(0) 编辑
摘要: 绑定类型的服务是在客户-服务接口中的服务端。绑定类型服务允许组件(如Activity)绑定服务、发送请求、接收响应、以及执行进程间通信(IPC)。一个典型的绑定类型的服务只跟它所服务的那个应用程序组件同时存在,并且不在后台无限期的运行。这份文档向你展示了如何创建绑定类型的服务,包括怎样跟其他应用程序组件绑定。但是,关于服务的基本信息你还是应该参照“Android Service”这份文档,如怎样从服务中发送通知,怎样设置服务在前台运行等等。基础绑定类型服务是Service类的一个实现,它允许其他应用程序绑定它,并跟它进行交互。要给服务提供绑定的能力,就必须要实现onBind()回调方法。这个方 阅读全文
posted @ 2012-02-28 19:43 移动应用开发 阅读(170) 评论(0) 推荐(0) 编辑
摘要: 遇见他,是在一个饭局上。 一落座,他就喋喋不休地抱怨开来;怨公司不好,拼死拼活一个月,拿到手里工资没多少;怨上司不公,谁擅长拍马屁谁拿到的项目就油水丰厚;怨同事不善,成天勾心斗角明争暗斗......终于,在他暂停抱怨的间隙,我小心翼翼地问了一句;既然工作如此不称心,为什么不跳槽?他一愣,奇怪地看了我一眼,似乎在看一个外星人。"跳槽?现在经济这么不景气,往哪里跳?"这下我算明白了,原来他的工作并非一无是处啊。 散席后,尽管他热情地与我道别,并且特意留下他的电话,但我,却再未联系过他。对我来说,一个怨气冲天的人,是不值得交往的。 诚然,他的工作确实有不尽如人意得地方,但在这个世 阅读全文
posted @ 2012-02-27 19:37 移动应用开发 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 有一位画家,举办过十几次个人画展。开始无论参观者多少,脸上总是挂着微笑。有一次,我问他:"你为什么每天都这么开心呢?"他给我讲一件事情:小时候,我兴趣非常广泛,也很要强。画画,拉手风琴,游泳,打篮球,必须都得第一才行。这当然是不可能的。于是,我心灰意冷,学习成绩一落千丈。 父亲知道后,找来一个漏斗和一捧玉米种子。让我双手放在漏斗下面接着,然后捡起一粒种子投到漏斗里面,种子便顺着漏斗滑到了我的手里。父亲投了十几次,我的手中也就有了十几粒种子。然后,父亲一次抓起满满的一把玉米粒放在漏斗里面,玉米粒相互挤着,竟一粒也没有掉下来。父亲对我说:"这个漏斗代表你,假如你每天都 阅读全文
posted @ 2012-02-27 19:32 移动应用开发 阅读(108) 评论(0) 推荐(0) 编辑
摘要: u-boot版本为u-boot-2009.08,平台smdk2410一、第一阶段启动代码分析在学习ARM时就知道,ARM在上电复位时将PC指针修改为0,即ARM是从0地址开始读取指令执行的。在cpu/arm920t/目录下有个u-boot.lds链接脚本,首先看代码段定义:. =0x00000000;. =ALIGN(4);.text :{ cpu/arm920t/start.o (.text) *(.text)} 我们看start.o就是放在0地址处的,所以它就是我们要找的启动代码,再看程序的入口点在哪:ENTRY(_start)程序入口点是由ENTRY伪指令指定的,所以程序的入口点就是_s 阅读全文
posted @ 2012-02-26 17:31 移动应用开发 阅读(633) 评论(0) 推荐(0) 编辑
摘要: u-boot版本为u-boot-2009.08,平台为mini2440一、建立开发板支持1.修改顶层Makefile,指定交叉编译器CROSS_COMPILE ?=arm-linux-2.修改顶层Makefile,仿照smdk2410的格式在smdk2410后添加mini2440_config: unconfig @$(MKCONFIG) $(@:_config=) arm arm920t mini2440 samsung s3c24x03.在board/samsung/目录下新建目录mini2440里面内容由smdk2410复制而得,将mini2440中的smkd2410.c修改为mini2 阅读全文
posted @ 2012-02-25 17:51 移动应用开发 阅读(117) 评论(0) 推荐(0) 编辑
摘要: S3C2440支持nor flash和nand flash两种方式启动,它是通过引脚OM1和OM0控制的。如果是从nor flash启动,因为复位后,ARM将PC指针设置为0,那么nor flash肯定要连到bank0上。如果从nand flash启动,S3C2440是这样做的,nand flash控制器自动的将nand flash前4K代码复制到叫做Stepping Stone地方,因为这个地方是处于0地址的,那么我们的启动代码就需要注意了,通过这4k代码要将整个u-boot代码复制到SDRAM中,这样我们u-boot才能正常启动。 阅读全文
posted @ 2012-02-25 14:15 移动应用开发 阅读(165) 评论(0) 推荐(0) 编辑
摘要: S3C2440时钟控制逻辑可以产生FCLK、HCLK、PCLK和UCLK。FCLK为CPU时钟。HCLK为AHB总线外设时钟,包括存储控制器、中断控制器、LCD控制器、DMA控制器等。PCLK为APB总线外设时钟,包括看门狗、IIS、IIC、PWM定时器、MMC接口、ADC、UART、GPIO、RTC和SPI等等。UCLK专用于USB主机或设备接口时钟。时钟源的选择:时钟源的选择是通过OM3和OM2管脚控制的,时钟源可以是外部晶振,也可以是外部时钟。S3C2440有两个锁相环(PLL),一个用于FCLK、HCLK和PCLK的MPLL,另一个专用于UCLK的UPLL。MPLLCON和UPLLCO 阅读全文
posted @ 2012-02-19 20:29 移动应用开发 阅读(251) 评论(0) 推荐(0) 编辑
上一页 1 ··· 19 20 21 22 23 24 25 26 27 ··· 51 下一页