如果我们以一个原始的Linux操作系统为基础,改造成一个适合于Android的系统,所要做的工作其实非常简单,仅仅是增加适用于Android的驱动程序。在Android中有很多Linux系统的驱动程序,将这些驱动程序移植到新系统...
在本书第1章的内容中已经讲解过Linux内核的基本知识,其实Android对Linux内核也进行了改动,这些改动保存在下面的文件中。drivers/misc/kernel_debugger.cdrivers/misc/pmem.cdrivers/misc/qemutrace/qemu_trace...
Android内核是基于Linux 2.6内核的,这是一个增强内核版本,除了修改部分Bug外,还提供了用于支持Android平台的设备驱动。Android不但使用了Linux内核的基本功能,而且对Linux进行了改造,目的是实现更为强大的...
前面介绍了Android系统的基本知识和移植内容,那么究竟在驱动开发领域需要做什么工作呢?我们的任务就是为某一个将要在Android系统上使用的硬件开发一个驱动程序。因为Android是基于Linux的,所以开发Android驱动...
在Android系统中,在移植过程中主要移植驱动方面的内容。Android移植主要分为如下几个类型。Ÿ 基本图形用户界面(GUI)部分:包括显示部分、用户输入部分和硬件相关的加速部分,还包括媒体编解码和OpenGL等。...
Android移植开发的最终目的是开发手机产品。从开发者的角度来看,这种类型的开发以具有硬件系统为前提,在硬件系统的基础上构建Android软件系统。这种类型的开发工作在Android系统的底层。在软件系统方面,主要的...
本书讲解的是Android驱动方面的开发知识,由图3-1可知,驱动开发是底层的应用,属于Linux内核层的工作。因为驱动是系统和硬件之间的载体,涉及不同硬件的应用问题,所以需要做系统移植工作。本节将简要介绍系统移...
我们开发的Android驱动程序是基于Linux内核的,这些驱动程序需要在Android系统中使用,上述工作需要系统移植的知识。本章将详细介绍移植Android系统的基本知识,以及系统移植的基本原理,为后面学习驱动开发和移...
第1章 Android底层开发基础 11.1 什么是驱动 11.1.1 驱动程序的魅力 11.1.2 电脑中的驱动 21.1.3 手机中的驱动程序 21.2 开源还是不开源的问题 31.2.1 雾里看花的开源 31.2.2 从为什么选择Java谈...
随着3G的到来,无线带宽越来越高,使得更多内容丰富的应用程序装入手机成为可能,如视频通话、视频点播、移动互联网冲浪和内容分享等。为了承载这些数据应用及快速部署,手机功能将会越来越智能,越来越开放。为...
本书从底层原理开始讲起,结合真实的案例向读者详细介绍了Android内核、移植和驱动开发的整个流程。全书分为19章,依次讲解驱动移植的必要性,何为HAL层深入分析,Goldfish、MSM、MAP内核和驱动解析,显示系统、...
我们已经有了一个可以工作的服务,不过需要以一种比较原始的人工方式去启动和停止。这个服务能够连接到远程服务器,获取我们朋友的最新消息。目前只是把这些消息输出到LogCat中,但是到下一章的时候,我们将会把...
我们现在有了个框架,已经准备好去做一些实际的工作,连接到像Twitter这样的服务、读取状态数据,并且在程序中显示数据。Twitter和其他类似Twitter的服务提供各种各样的API来获得我们的朋友状态。第三方库jtwitt...
根据设计,我们的服务需要被频繁地唤醒,从在线服务中检查最新的消息,然后再次睡眠一段时间。这一过程需要保持一直进行下去,直到服务被停止。实现这个设计的一个好办法是,把我们的服务放在一个循环中,两次迭...
要捕获新条目的点击事件,我们需要更新StatusActivity中的onOptionsItemSelected()方法,这跟我们在92页的更新StatusActivity,捕获菜单事件一节中所做的一样。打开 StatusActivity.java文件,找到onOptionsIte...
现在我们已经定义并且声明了这个服务,接下来考虑一个控制它启动或者停止的方法。最简单的方法就是在我们已经创建好的选项菜单中添加一个菜单按钮。我们稍后再介绍更智能的启动服务的方法,现在手动启动的方式只...
我们的服务已经有了个样子,接下来就跟处理其他基础构件一样,必须在manifest文件中定义该服务,不然是无法调用的。打开AndroidManifest.xml,单击最右边的标签页查看XML 源码,把如下代码加入<application> 元...
创建服务的基本过程与创建 Activity或者其他基础构件类似,首先创建一个类,继承Android框架中提供的Service类。要创建这个新服务,首先需要新建一个Java文件。在src目录中选择你的 Java package,右键选择 ...
在本章的引言中曾经提到,我们需要一个服务能一直在后台执行,并且定期抓取 Twitter的最新消息并存入本地数据库。这一抓取机制的目的是将更新缓存到本地,这样我们的程序在离线时也有缓存的数据可读。我们称这个...
现在获取Twitter对象的功能已经被移动到YambaApplication了,接下来需要对StatusActivity进行简化,在其中使用YambaApplication提供的功能。下面是新版PostToTwitter AsyncTask的样子。1.class PostToTwitter ...