1.5 Android的特性
Android开发秘籍(第2版)
Android的具体特性以及如何利用它们乃是贯穿全书的一大主题。从更广泛的层面讲,Android的一些关键特性是其主要卖点和与众不同之处。认识Android的这些强项并充分利用它们将会带来益处。

1.5.1 多线程应用微件
Android系统并不限制处理器某一时间只能处理单个应用。应用程序以及单个应用程序内不同线程的优先级由系统管理。这样的好处在于,在用户的前台进程占用设备时,后台任务依然可以保持运行。例如,当用户在玩游戏时,另一个后台进程可以检查股票价格并在需要时发出警告。

窗口微件(App Widget)是可以嵌入到其他应用程序(比如主屏幕)中的迷你应用程序。它们可以在其他应用程序运行期间处理事件(比如开启一个音乐流或更新外界温度信息)。

多线程的好处在于丰富了用户体验。然而,你必须小心谨慎,以防耗能的应用将电池电量榨干。多线程特性将在第3章中进一步讨论。

1.5.2 触摸、手势和多点触摸
触摸屏对于手持设备而言是一种直观的用户界面。如果善加利用,可以使用户轻松上手。当手指接触屏幕后,拖曳和投掷是与图形交互的自然而然的方式。多点触控提供了一种同时追踪多个手指触摸轨迹的办法,常用于缩放或旋转视图。

许多触摸事件对开发者是透明可用的,而无需实现其具体的行为。可以根据需要自定义手势。在应用程序间设法保持触摸事件用法的一致性是很重要的。触摸事件将在第6章中深入探讨。

1.5.3 硬键盘和软键盘
手持设备使用户发生两极分化的特性之一就是到底应该使用物理键盘(或称为硬键盘)还是软件键盘(或称为软键盘)。硬键盘提供的真实触感和明确的键位设置对于一些人而言会使得输入更迅速,但另一些人则更喜欢软键盘的简洁设计和易用性。

Android设备种类繁多,两种键盘类型都有。这给开发者带来的麻烦就是要兼容二者。软键盘的一个劣势就是屏幕的一部分要专门用于输入,任何用户界面布局都需要将这一点纳入考虑范围并进行测试。