13.3.3 全局搜索功能

Android的应用内搜索通常是在本应用的界面组件内进行触发的,如果开发者期望在任何时候都可以调出应用的搜索框进行搜索,就要将应用内搜索配置成全局搜索:


<?xml version="1.0"encoding="utf-8"?>

<searchable…

android:includeInGlobalSearch="true">

</searchable>


将应用内搜索配置成一个可选的全局搜索项,仅需要将搜索配置的android:includeIn-GlobalSearch设置为true即可。

与应用内搜索相比,全局搜索的搜索对话框有所变化,不再是一个普通的对话框,而是独立的界面组件,所有配置了全局搜索的应用都共享该界面组件,用户可以选择和设置需要交互的应用(如图13-5所示)。

13.3.3 全局搜索功能 - 图1

图 13-5 全局搜索对话框及选择合适的搜索应用

除此之外,全局搜索的实现与应用内搜索无异,同样都可以将搜索历史添加到数据源组件中,也是使用搜索结果组件来呈现结果。因此,在实践中,实现全局搜索不需要开发者为此做过多配置,仅需要选择合适的搜索组件将其配置成全局搜索即可。

注意 应用内搜索是Android最有特色的一个模块,在实际开发中,开发者可以利用它为应用提供统一的搜索功能。Android为应用内搜索提供了语音输入、搜索历史、搜索提示等辅助功能支持,使得搜索的开发变得更加容易。