<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"><title type="text">博客园_农民伯伯</title><subtitle type="text"/><id>http://feed.cnblogs.com/blog/u/28619/rss</id><updated>2012-02-09T02:26:04Z</updated><author><name>农民伯伯</name><uri>http://www.cnblogs.com/over140/</uri></author><generator>CNBlogs BlogServer</generator><link rel="alternate" type="text/html" href="http://www.cnblogs.com/over140/"/><link rel="self" type="application/atom+xml" href="http://feed.cnblogs.com/blog/u/28619/rss"/><entry><id>http://www.cnblogs.com/over140/archive/2012/01/31/2332595.html</id><title type="text">Android中文API合集(7) + 开发者指南合集(2) (chm格式)</title><summary type="text">Android中文翻译组是一个非盈利性质的开源组织，至今已超过300人报名参与，关于翻译组的介绍，请看这里。欢迎更多朋友加入，发邮件到over140@gmail.com申请加入或直接参与Wiki编辑。</summary><published>2012-01-31T01:54:00Z</published><updated>2012-01-31T01:54:00Z</updated><author><name>农民伯伯</name><uri>http://www.cnblogs.com/over140/</uri></author><link rel="alternate" href="http://www.cnblogs.com/over140/archive/2012/01/31/2332595.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/over140/archive/2012/01/31/2332595.html"/><content type="html">&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;前言 &lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;&lt;div&gt; &lt;p style="text-align: left; text-indent: 21pt" align="left"&gt;Android&lt;span style="font-family: 宋体"&gt;中文翻译组是一个非盈利性质的开源组织&lt;/span&gt;&lt;span style="font-family: 宋体"&gt;，&lt;/span&gt;&lt;span style="font-family: 宋体"&gt;至今已超过&lt;/span&gt;300&lt;span style="font-family: 宋体"&gt;人报名参与&lt;/span&gt;&lt;span style="font-family: 宋体"&gt;，&lt;/span&gt;&lt;span style="font-family: 宋体"&gt;关于翻译组的介绍，请看&lt;/span&gt;&lt;a href="http://www.cnblogs.com/over140/archive/2010/10/26/1861234.html"&gt;&lt;span style="font-family: 宋体"&gt;&lt;span&gt;这里&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: 宋体"&gt;。欢迎更多朋友加入，发邮件到&lt;/span&gt;&lt;a href="&amp;#109;&amp;#97;&amp;#105;&amp;#108;&amp;#116;&amp;#111;&amp;#58;&amp;#111;&amp;#118;&amp;#101;&amp;#114;&amp;#49;&amp;#52;&amp;#48;&amp;#64;&amp;#103;&amp;#109;&amp;#97;&amp;#105;&amp;#108;&amp;#46;&amp;#99;&amp;#111;&amp;#109;"&gt;over140@gmail.com&lt;/a&gt;&lt;span style="font-family: 宋体"&gt;申请加入或直接参与Wiki编辑。&lt;/span&gt;&lt;/p&gt; &lt;p align="left"&gt;&lt;/p&gt; &lt;p align="left"&gt;Android&lt;span style="font-family: 宋体"&gt;中文翻译组&lt;/span&gt;WIKI&lt;span style="font-family: 宋体"&gt;网站：&lt;/span&gt;&lt;a href="http://wikidroid.sinaapp.com/"&gt;http://wikidroid.sinaapp.com/&lt;/a&gt;&lt;span style="font-family: 宋体"&gt;。&lt;/span&gt;&lt;span style="font-family: 宋体"&gt;不管是否加入我们，请与我们&lt;/span&gt;&lt;span style="font-family: 宋体"&gt;一起自由编辑和分享相关中文资料。&lt;/span&gt;&lt;/p&gt; &lt;p align="left"&gt;&lt;/p&gt; &lt;p align="left"&gt;&lt;span&gt;Android&lt;/span&gt;&lt;span style="font-family: 宋体"&gt;中文翻译组官方网站：&lt;/span&gt;&lt;a href="http://androidbox.sinaapp.com/"&gt;http://androidbox.sinaapp.com/&lt;/a&gt;&lt;span style="font-family: 宋体"&gt;。有在线的中文&lt;/span&gt;API&lt;span style="font-family: 宋体"&gt;、开发者指南、开源项目以及&lt;/span&gt;Android&lt;span style="font-family: 宋体"&gt;视频专栏。&lt;/span&gt;&lt;/p&gt; &lt;p align="left"&gt;&lt;/p&gt; &lt;p align="left"&gt;&lt;span style="font-family: 宋体"&gt;本合集发布日期：&lt;/span&gt;&lt;strong&gt;&lt;span style="color: red;"&gt;2012&lt;/span&gt;&lt;span style="font-family: 宋体; color: red;"&gt;年&lt;/span&gt;&lt;span style="color: red;"&gt;1&lt;/span&gt;&lt;span style="font-family: 宋体; color: red;"&gt;月&lt;/span&gt;&lt;span style="color: red;"&gt;31&lt;/span&gt;&lt;span style="font-family: 宋体; color: red;"&gt;日&lt;/span&gt;&lt;/strong&gt;&lt;span style="font-family: 宋体;"&gt;，涵盖历次合集内容，最新版请关注翻译组微博：&lt;/span&gt;&lt;a href="http://weibo.com/android2"&gt;http://weibo.com/android2&lt;/a&gt;&lt;span style="font-family: 宋体"&gt;。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&amp;nbsp;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;截图&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;img alt="" src="http://images.cnblogs.com/cnblogs_com/over140/2012/1/2012-1-31_1.png" width="764" height="572" /&gt; &lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;下载&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;本站 &lt;br /&gt;&lt;/p&gt;&lt;div&gt;&lt;p&gt;&lt;a href="http://files.cnblogs.com/over140/2012/Android%E5%BC%80%E5%8F%91%E8%80%85%E6%8C%87%E5%8D%972.zip" title="Android中文翻译组&amp;#8212;&amp;#8212;Android开发者指南（2）.chm"&gt;Android中文翻译组&amp;#8212;&amp;#8212;Android开发者指南（2）.chm&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://files.cnblogs.com/over140/2012/Android%E4%B8%AD%E6%96%87API%E5%90%88%E9%9B%867.zip" title="Android中文翻译组&amp;#8212;&amp;#8212;Android中文API合集（7）.chm "&gt;Android中文翻译组&amp;#8212;&amp;#8212;Android中文API合集（7）.chm &lt;/a&gt;&lt;/p&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;结束&lt;/strong&gt; &lt;br /&gt;&lt;/p&gt;&lt;p&gt;由于精力有限，目前暂停了自动更新客户端的维护，内部组织结构还在调整，推荐想参与的朋友直接参与到WIKI编辑。&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt; &lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/over140/aggbug/2332595.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/over140/archive/2012/01/31/2332595.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/over140/archive/2012/01/29/2330758.html</id><title type="text">Android应用开发提高系列（3）——《Effective Java 中文版》读书笔记</title><summary type="text">《Effective Java 中文版》读书笔记</summary><published>2012-01-29T06:32:00Z</published><updated>2012-01-29T06:32:00Z</updated><author><name>农民伯伯</name><uri>http://www.cnblogs.com/over140/</uri></author><link rel="alternate" href="http://www.cnblogs.com/over140/archive/2012/01/29/2330758.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/over140/archive/2012/01/29/2330758.html"/><content type="html">&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;p style="line-height: 19px; "&gt;&lt;strong style="color: red; "&gt;声明&lt;/strong&gt;&lt;/p&gt;&lt;p style="line-height: 19px; "&gt;欢迎转载，但请保留文章原始出处:)&amp;nbsp;&lt;br /&gt;&lt;/p&gt;&lt;p style="line-height: 19px; "&gt;博客园：http://www.cnblogs.com&lt;/p&gt;　　　　农民伯伯： http://over140.cnblogs.com&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;书籍&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;《Effective Java 中文版》　　03版　　潘爱民译　　&lt;/p&gt;&lt;p&gt;本书介绍了57条极具实用价值的经验规则。这些经验规则涵盖了大多数开发人员每天所面临的问题的解决方案，通过对Java平台设计专家所使用的技术的全面描述，揭示了应坐什么和不应做什么，才能产生清晰、健壮和高效的代码。&lt;br /&gt;&lt;/p&gt;&lt;/div&gt;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;正文 &lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;　　&lt;span style="color: red;"&gt;注意：条目和用语可能与书籍有所出入，但尽量保持原样加一些自己的理解。&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;1.&amp;nbsp; 构造函数一定不能调用可被覆写的方法，无论是直接还是间接进行。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;2.&amp;nbsp; 接口应该只是被用来定义类型的，它们不应被用来导出常量。（备注：不要再接口中定义常量）P/89&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;3.&amp;nbsp; 一个安全而保守的策略是，永远不要导出两个具有相同参数数目的重载方法。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;4.&amp;nbsp; 返回零长度的数组而不是null。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;5. &amp;nbsp; 嵌套类&lt;br /&gt;&lt;/p&gt;&lt;p&gt;嵌套类(nested class)是指被定义在另一个类的内部的类，其存在的目的应该只是为它的外围类提供服务。嵌套类分为四种：&lt;br /&gt;&lt;/p&gt;&lt;p&gt;5.1　　静态成员类(static member class)&lt;/p&gt;&lt;p&gt;最简单的嵌套类，最好把它看做一个普通的类。它可以访问外围类的所有成员，包括那些声明为私有的成员。与其他类静态成员一样，也遵守同样的可访问性规则。&lt;/p&gt;&lt;p&gt;其通常用法是作为公有的辅助类，仅当与它外部类一起使用时才有意义。&lt;/p&gt;&lt;p&gt;私有静态成员类的一种通常用法是用来代表外围类对象的组件。例如，Map实例的内部通常有一个Entry对象对应与Map中每一对键值对，虽然每一个Entry都与一个Map关联，但Entry上的方法(getKey、getValue、setValue)并不需要访问该Map。因此使用非静态成员来表示Entry是浪费的，私有静态成员类是最佳的选择。 &lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;5.2　　非静态成员类(nonstatic member class)&lt;/p&gt;&lt;p&gt;非静态成员类的每一个实例都包含一个额外指向外部类对象的引用。维护这份引用要消耗时间和空间。&lt;/p&gt;&lt;p&gt;其通常用法是定义一个Adapter，它允许外围类的一个实例被看做另一个不相关的类的实例。例如，Map接口的实现往往使用非静态成员类来实现它们的集合视图。 &lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;5.3　　匿名类(anonymous class)&lt;/p&gt;&lt;p&gt;没有名字，它不是外围类的一个成员，在使用的同时被声明和实例化。可以出现在代码中任何允许表达式出现的地方。通常只实现了其接口中或超类中的方法，不会声明任何新的方法，它们应该非常简短。&lt;br /&gt;&lt;/p&gt;&lt;p&gt;用法1&amp;nbsp; 是创建一个函数对象(function object)，比如Comparator实例。例如：&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;"&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Arrays.sort(args,&amp;nbsp;&lt;span style="color: #0000FF;"&gt;new&lt;/span&gt;&amp;nbsp;Comparator&amp;lt;String&amp;gt;()&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;@Override&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;int&lt;/span&gt;&amp;nbsp;compare(String&amp;nbsp;obj1,&amp;nbsp;String&amp;nbsp;obj2)&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;return&lt;/span&gt;&amp;nbsp;obj1.length()&amp;nbsp;-&amp;nbsp;obj2.length();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;});&lt;/div&gt;&lt;/div&gt;&lt;p&gt;用法2&amp;nbsp; 创建一个过程对象(process object)，比如Thread、Runable或者TimeTask实例。 &lt;/p&gt;&lt;p&gt;用法3&amp;nbsp; 在一个静态工厂方法的内部，如：&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;"&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;static&lt;/span&gt;&amp;nbsp;List&amp;nbsp;intArrayList(&lt;span style="color: #0000FF;"&gt;final&lt;/span&gt;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;int&lt;/span&gt;[]&amp;nbsp;a){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;return&lt;/span&gt;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;new&lt;/span&gt;&amp;nbsp;AbstractList&amp;lt;Integer&amp;gt;()&amp;nbsp;{&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;@Override&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&amp;nbsp;Integer&amp;nbsp;get(&lt;span style="color: #0000FF;"&gt;int&lt;/span&gt;&amp;nbsp;location)&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;return&lt;/span&gt;&amp;nbsp;a[location];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;@Override&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;int&lt;/span&gt;&amp;nbsp;size()&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;return&lt;/span&gt;&amp;nbsp;a.length;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}};&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;&lt;/div&gt;&lt;p&gt;用法4&amp;nbsp; 在复杂的类型安全枚举类型中，用于公有的静态final域的初始化器中，例如：&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;"&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;abstract&lt;/span&gt;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;class&lt;/span&gt;&amp;nbsp;Operation&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;private&lt;/span&gt;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;final&lt;/span&gt;&amp;nbsp;String&amp;nbsp;name;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Operation(String&amp;nbsp;name)&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;this&lt;/span&gt;.name&amp;nbsp;=&amp;nbsp;name;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&amp;nbsp;String&amp;nbsp;toString()&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;return&lt;/span&gt;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;this&lt;/span&gt;.name;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;abstract&lt;/span&gt;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;double&lt;/span&gt;&amp;nbsp;eval(&lt;span style="color: #0000FF;"&gt;double&lt;/span&gt;&amp;nbsp;x,&amp;nbsp;&lt;span style="color: #0000FF;"&gt;double&lt;/span&gt;&amp;nbsp;y);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;static&lt;/span&gt;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;final&lt;/span&gt;&amp;nbsp;Operation&amp;nbsp;PLUS&amp;nbsp;=&amp;nbsp;&lt;span style="color: #0000FF;"&gt;new&lt;/span&gt;&amp;nbsp;Operation("+")&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;@Override&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;double&lt;/span&gt;&amp;nbsp;eval(&lt;span style="color: #0000FF;"&gt;double&lt;/span&gt;&amp;nbsp;x,&amp;nbsp;&lt;span style="color: #0000FF;"&gt;double&lt;/span&gt;&amp;nbsp;y)&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;return&lt;/span&gt;&amp;nbsp;x&amp;nbsp;+&amp;nbsp;y;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;5.4　　局部类(local class) &lt;/p&gt;&lt;p&gt;使用最少，在任何&amp;#8220;可以声明局部变量&amp;#8221;的地方，都可以声明局部类，也遵守同样的作用域规则。与匿名类一样，它们必须非常简短。&lt;/p&gt;&lt;p&gt;简而言之，如果一个嵌套类需要在单个方法之外仍然是可见的，或者它太长了，不适合放在一个方法内部，那么应该使用成员类。如果成员类的每个实例都需要一个指向其外围实例的引用，则把成员类做成非静态的；否则就做成静态的。假设一个嵌套类属于一个方法的内部，如果你只需要在一个地方创建它的实例，并且已经有了一个预先存放的类型可以说明这个类的特征，则把它做成匿名类；否则就做成局部类。 &lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;6.&amp;nbsp; 了解和使用库&lt;/p&gt;&lt;p&gt;应该熟悉java.lang、java.util以及java.io中的内容。 &lt;/p&gt;&lt;p&gt;6.1&amp;nbsp; Random.nextInt(int) 　　产生随机整数。&lt;br /&gt;&lt;/p&gt;&lt;p&gt;6.2&amp;nbsp; Collections.sort(v)　　字符串组成的Vector排序&lt;/p&gt;&lt;p&gt;6.3&amp;nbsp; Collections.sort(v, String.CASE_INSENSITIVE_ORDER)　　字符串组成的Vector排序，忽略大小写&lt;br /&gt;&lt;/p&gt;&lt;p&gt;6.4&amp;nbsp; System.out.println(Arrays.asList(a))　　循环打印一个数组中所有的元素&lt;/p&gt;&lt;p&gt;6.5&amp;nbsp; 获取两个Hashtable包含相同映射键值的所有键：&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;"&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Map&amp;nbsp;tmp&amp;nbsp;=&amp;nbsp;&lt;span style="color: #0000FF;"&gt;new&lt;/span&gt;&amp;nbsp;HashMap(h1);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;tmp.entrySet().retainAll(h2.entrySet());&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Set&amp;nbsp;result&amp;nbsp;=&amp;nbsp;tmp.keySet();&lt;/div&gt;&lt;/div&gt;&lt;p&gt;6.6&amp;nbsp; Arrays.toString(a)　　打印数组每一个元素&lt;/p&gt;&lt;p&gt;6.7&amp;nbsp; Arrays.equals(a1, a2)　　比较两个数组长度、每一个元素是否相等。 &lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div&gt;&lt;/div&gt;&lt;p&gt;7.&amp;nbsp; 使用异常&lt;/p&gt;&lt;p&gt;7.1　　被检查的异常(checked exception)&lt;/p&gt;&lt;p&gt;通过抛出一个被检查的异常，强迫调用者在一个catch子句中处理异常，或者将它传播到外面。 &lt;/p&gt;&lt;p&gt;7.2　　运行时异常(run-time exception) &lt;/p&gt;&lt;p&gt;大多数的运行时异常都是指API的客户没有遵守API规范建立的约定。例如数组越界。 &lt;/p&gt;&lt;p&gt;总而言之，对于可恢复的条件，使用被检查的异常；对于程序错误，使用运行时异常。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;8.&amp;nbsp; 尽量使用标准的异常&lt;/p&gt;&lt;p&gt;8.1　　IllegalArgumentException　　调用者传递的参数不合适&lt;/p&gt;&lt;p&gt;8.2　　NullPointException　　空指针异常&lt;/p&gt;&lt;p&gt;8.3　　IndexOutOfBoundsException　　下标越界&lt;/p&gt;&lt;p&gt;8.4　　ConcurrentModificationException　　在禁止并发修改的情况下，对象检测到并发修改&lt;/p&gt;&lt;p&gt;8.5　　UnsupportedOperationException　　对象不支持所请求的方法 &lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div&gt;&lt;strong&gt;结束 &lt;/strong&gt;&lt;/div&gt;　　由于先读的 《Practical Java》，与本书内容有部分相似，所以看得比较快，仍然值得一读，也终于弄懂关于嵌套类这块的内容。&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/over140/aggbug/2330758.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/over140/archive/2012/01/29/2330758.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/over140/archive/2012/01/20/2327867.html</id><title type="text">Android开发指南(43) —— Location and Maps</title><summary type="text">本章内容为 Android开发者指南的 Framework Topics/Location and Maps章节，译为"位置和地图"，版本为Android 4.0 r1，翻译来自："太阳火神的美丽人生"，欢迎访问他的微博："http://alot.sinaapp.com"，再次感谢他 ！期待你一起参与翻译Android的相关资料，联系我over140@gmail.com。</summary><published>2012-01-20T06:34:00Z</published><updated>2012-01-20T06:34:00Z</updated><author><name>农民伯伯</name><uri>http://www.cnblogs.com/over140/</uri></author><link rel="alternate" href="http://www.cnblogs.com/over140/archive/2012/01/20/2327867.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/over140/archive/2012/01/20/2327867.html"/><content type="html">&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;p&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;前言&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;本章内容为  Android开发者指南的  Framework Topics/Location and Maps章节，译为"位置和地图"，版本为Android 4.0 r1，翻译来自："太阳火神的美丽人生"，欢迎访问他的微博："&lt;a title="http://alot.sinaapp.com" href="http://alot.sinaapp.com/"&gt;http://alot.sinaapp.com&lt;/a&gt;"，再次感谢他 ！期待你一起参与翻译Android的相关资料，联系我over140@gmail.com。 &lt;/p&gt; &lt;p&gt;&lt;/p&gt; &lt;div&gt; &lt;p&gt;&lt;strong style="color: red"&gt;声明&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;欢迎转载，但请保留文章原始出处:)&amp;nbsp;&lt;/p&gt; &lt;p&gt;博客园：&lt;a title="http://www.cnblogs.com" href="http://www.cnblogs.com/"&gt;http://www.cnblogs.com/&lt;/a&gt;&lt;/p&gt;　　　　Android中文翻译组：&lt;a title="http://androidbox.sinaapp.com/" href="http://androidbox.sinaapp.com/"&gt;http://androidbox.sinaapp.com/&lt;/a&gt;&lt;/div&gt;  &lt;p&gt;&lt;/p&gt;&lt;/div&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;strong&gt;&amp;nbsp;&lt;/strong&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;  &lt;p style="text-align:center;" align="center"&gt;&lt;strong&gt;&lt;span style="font-size:22.0pt; font-family:宋体;"&gt;位置和地图&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="text-align:center" align="center"&gt;&lt;span style="font-family:宋体;"&gt;译者署名：太阳火神的美丽人生&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:center" align="center"&gt;&lt;span style="font-family:宋体;"&gt;译者链接：&lt;/span&gt;&lt;span&gt;&lt;a href="http://alot.sinaapp.com/"&gt;http://alot.sinaapp.com&lt;/a&gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:center" align="center"&gt;&lt;span style="font-family:宋体;"&gt;版本：&lt;/span&gt;Android 4.0 r1&lt;/p&gt;  &lt;p style="text-align:left" align="left"&gt;&lt;strong&gt;&lt;span style="font-size:12.0pt;font-family:宋体;"&gt;原文&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="text-align:left" align="left"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;a href="http://developer.android.com/guide/topics/location/index.html"&gt;http://developer.android.com/guide/topics/location/index.html&lt;/a&gt;&lt;/p&gt;  &lt;p style="text-align:left" align="left"&gt;&lt;strong&gt;&amp;nbsp;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt" align="left"&gt;&lt;span style="font-family:宋体;"&gt;基于位置和地图的应用对移动设备用户来说更引人注目。你可以使用&lt;/span&gt;&lt;code&gt;&lt;span style="font-size:12.0pt;"&gt;&lt;a href="http://developer.android.com/reference/android/location/package-summary.html"&gt;&lt;span style="font-size:10.5pt;font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;android.location&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span style="font-size:12.0pt;"&gt;包的类和谷歌地图扩展库将这种能力构建到你的应用中。以下各部分提供细节信息。&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;/code&gt;&lt;/p&gt;  &lt;p style="text-align:left" align="left"&gt;&lt;code&gt;&amp;nbsp;&lt;/code&gt;&lt;/p&gt;  &lt;p style="margin:0cm;margin-bottom:.0001pt"&gt;&lt;strong&gt;位置服务&lt;/strong&gt;&lt;/p&gt;  &lt;p style="margin:0cm;margin-bottom:.0001pt;text-indent:21.0pt"&gt;&lt;span style="font-size:10.5pt;font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;Android &lt;/span&gt;&lt;span style="font-size:10.5pt;"&gt;通过&lt;/span&gt;&lt;span style="font-size:10.5pt;font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt; &lt;code&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;android.location &lt;/span&gt;&lt;/code&gt;&lt;/span&gt;&lt;code&gt;&lt;span style="font-size:10.5pt;"&gt;包中的类使你的应用可以访问由设备来支撑的位置服务。位置框架的核心组件是&lt;/span&gt;&lt;/code&gt;&lt;span style="font-size:10.5pt;font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt; &lt;code&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;&lt;a href="http://developer.android.com/reference/android/location/LocationManager.html"&gt;LocationManager&lt;/a&gt; &lt;/span&gt;&lt;/code&gt;&lt;/span&gt;&lt;code&gt;&lt;span style="font-size:10.5pt;"&gt;系统服务，它提供了一些应用编程接口来确定位置和测定底层设备的方向（如果可用）。&lt;/span&gt;&lt;/code&gt;&lt;/p&gt;  &lt;p style="margin:0cm;margin-bottom:.0001pt;text-indent:21.0pt"&gt;&lt;span style="font-size:10.5pt;"&gt;和其它系统服务一样，你不要直接实例化&lt;/span&gt;&lt;code&gt;&lt;span style="font-size:10.5pt; font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;&lt;a href="http://developer.android.com/reference/android/location/LocationManager.html"&gt;LocationManager&lt;/a&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span style="font-size:10.5pt;"&gt;。当然，你可以通过调用&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span style="font-size:10.5pt; font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;&lt;a href="http://developer.android.com/reference/android/content/Context.html#getSystemService%28java.lang.String%29"&gt;getSystemService(Context.LOCATION_SERVICE)&lt;/a&gt;&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span style="font-size:10.5pt;"&gt;从系统请求一个实例。该方法返回指向一个新的&lt;/span&gt;&lt;/code&gt;&lt;span style="font-size:10.5pt; font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt; &lt;code&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;&lt;a href="http://developer.android.com/reference/android/location/LocationManager.html"&gt;LocationManager&lt;/a&gt; &lt;/span&gt;&lt;/code&gt;&lt;/span&gt;&lt;code&gt;&lt;span style="font-size:10.5pt;"&gt;实例的句柄。&lt;/span&gt;&lt;/code&gt;&lt;/p&gt;  &lt;p style="margin:0cm;margin-bottom:.0001pt;text-indent:18.0pt"&gt;&lt;span style="font-size:10.5pt;"&gt;一旦你的应用有了一个&lt;/span&gt;&lt;span style="font-size:10.5pt;font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt; &lt;code&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;&lt;a href="http://developer.android.com/reference/android/location/LocationManager.html"&gt;LocationManager&lt;/a&gt; &lt;/span&gt;&lt;/code&gt;&lt;/span&gt;&lt;code&gt;&lt;span style="font-size:10.5pt;"&gt;，就可以做如下三件事了：&lt;/span&gt;&lt;/code&gt;&lt;/p&gt;  &lt;ul style="margin-top:0cm" type="disc"&gt;&lt;li style="text-align:left;"&gt;&lt;span style="font-family:宋体;"&gt;查询到所有的&lt;/span&gt;&lt;code&gt;&lt;span style="font-size:12.0pt;"&gt;&lt;a href="http://developer.android.com/reference/android/location/LocationProvider.html"&gt;&lt;span style="font-size:10.5pt;font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;LocationProvider&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/code&gt; &lt;span style="font-family:宋体;"&gt;的列表，以获得最新的用户位置。&lt;/span&gt;&lt;/li&gt;&lt;li style="text-align:left;"&gt;&lt;span style="font-family:宋体;"&gt;从某个位置提供者注册&lt;/span&gt;/&lt;span style="font-family:宋体;"&gt;注销定期更新用户的当前位置（通过条件或名称指定）。&lt;/span&gt;&lt;/li&gt;&lt;li style="text-align:left;"&gt;&lt;span style="font-family:宋体;"&gt;注册&lt;/span&gt;/&lt;span style="font-family:宋体;"&gt;注销在设备接近给定经&lt;/span&gt;/&lt;span style="font-family:宋体;"&gt;纬度范围（由米为单位的半径指定）内时要被激活的指定意向。&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;p style="margin:0cm;margin-bottom:.0001pt;text-indent:18.0pt"&gt;&lt;span style="font-size:10.5pt;"&gt;要获得更多信息，阅读&lt;/span&gt;&lt;span style="font-size:10.5pt;font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt; &lt;a href="http://developer.android.com/guide/topics/location/obtaining-user-location.html"&gt;&lt;span style="font-family:宋体;"&gt;&lt;span&gt;获得用户位置&lt;/span&gt;&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;span style="font-size:10.5pt;"&gt;指南。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm;margin-bottom:.0001pt"&gt;&lt;strong&gt;&amp;nbsp;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="margin:0cm;margin-bottom:.0001pt"&gt;&lt;strong&gt;谷歌地图扩展库&lt;/strong&gt;&lt;/p&gt;  &lt;p style="margin:0cm;margin-bottom:.0001pt;text-indent:21.0pt"&gt;&lt;span style="font-size:10.5pt;"&gt;为了使你添加强大的地图能力到应用中更容易，谷歌提供了包含&lt;/span&gt;&lt;span style="font-size: 10.5pt;font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;com.google.android.maps &lt;/span&gt;&lt;span style="font-size:10.5pt;"&gt;包的地图扩展库。&lt;/span&gt;&lt;span style="font-size:10.5pt;font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;com.google.android.maps&lt;/span&gt;&lt;span style="font-size: 10.5pt;"&gt;包的类提供了内置的下载、渲染和缓存地图碎片能力，以及各种显示选项和控件。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm;margin-bottom:.0001pt;text-indent:21.0pt"&gt;&lt;span style="font-size:10.5pt;"&gt;地图包中的主要类是&lt;/span&gt;&lt;code&gt;&lt;span style="font-size:10.5pt; font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;com.google.android.maps.MapView&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span style="font-size:10.5pt;"&gt;，它是一个&lt;/span&gt;&lt;/code&gt;&lt;span style="font-size:10.5pt;font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt; &lt;code&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;&lt;a href="http://developer.android.com/reference/android/view/ViewGroup.html"&gt;ViewGroup&lt;/a&gt;&lt;/span&gt;&lt;/code&gt;&lt;/span&gt;&lt;code&gt;&lt;span style="font-size:10.5pt;"&gt;的子类。&lt;/span&gt;&lt;/code&gt;&lt;span style="font-size:10.5pt;font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;MapView&lt;/span&gt;&lt;span style="font-size:10.5pt;"&gt;显示承载从谷歌地图服务获得的数据的地图。当&lt;/span&gt;&lt;span style="font-size:10.5pt;font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;MapView&lt;/span&gt;&lt;span style="font-size:10.5pt;"&gt;获得焦点时，它会自动捕获键盘按键和触摸手势来平移和缩放地图，包括处理网络请求获得额外的地图碎片。它也提供了所有必需的用户界面元素给用户来控制地图。你的应用也可以使用&lt;/span&gt;&lt;span style="font-size:10.5pt;font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;MapView&lt;/span&gt;&lt;span style="font-size:10.5pt;"&gt;类方法来编程控制&lt;/span&gt;&lt;span style="font-size:10.5pt;font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;MapView&lt;/span&gt;&lt;span style="font-size:10.5pt;"&gt;并在地图上绘制一定数量的修饰样式。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm;margin-bottom:.0001pt;text-indent:21.0pt"&gt;&lt;span style="font-size:10.5pt;"&gt;通常，&lt;/span&gt;&lt;span style="font-size:10.5pt;font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;MapView&lt;/span&gt;&lt;span style="font-size:10.5pt;"&gt;类提供一个谷歌地图应用编程接口的包装，它使你的应用可以通过类方法操作谷歌地图数据，并且当你想要其它类型的视图时它可以让你使用地图数据。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm;margin-bottom:.0001pt;text-indent:21.0pt"&gt;&lt;span style="font-size:10.5pt;"&gt;地图扩展库不是标准&lt;/span&gt;&lt;span style="font-size:10.5pt;font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;Android &lt;/span&gt;&lt;span style="font-size:10.5pt;"&gt;库的一部分，所以它可能在某些兼容的&lt;/span&gt;&lt;span style="font-size:10.5pt;font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;Android&lt;/span&gt;&lt;span style="font-size:10.5pt;"&gt;设备上不存在。同样，地图扩展库也未包含在&lt;/span&gt;&lt;span style="font-size:10.5pt; font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;SDK &lt;/span&gt;&lt;span style="font-size:10.5pt;"&gt;提供的标准&lt;/span&gt;&lt;span style="font-size:10.5pt;font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;Android&lt;/span&gt;&lt;span style="font-size:10.5pt;"&gt;库中。地图扩展库作为&lt;/span&gt;&lt;span style="font-size:10.5pt;font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;Android SDK&lt;/span&gt;&lt;span style="font-size:10.5pt;"&gt;谷歌应用编程接口插件的一部分提供给你使用，以便你可以使用&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm;margin-bottom:.0001pt;text-indent:21.0pt"&gt;&lt;span style="font-size:10.5pt;"&gt;要了解更多有关地图扩展库的信息以及如何下载和使用谷歌应用编程接口插件，访问&lt;/span&gt;&lt;span style="font-size:10.5pt;font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;a href="http://code.google.com/android/add-ons/google-apis"&gt;http://code.google.com/android/add-ons/google-apis&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm;margin-bottom:.0001pt;text-indent:21.0pt"&gt;&lt;span style="font-size:10.5pt;"&gt;为了您的方便，谷歌应用编程接口插件也可以作为可下载的组件从&lt;/span&gt;&lt;span style="font-size: 10.5pt;font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;Android SDK &lt;/span&gt;&lt;span style="font-size:10.5pt;"&gt;和&lt;/span&gt;&lt;span style="font-size:10.5pt;font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt; AVD Manager&lt;/span&gt;&lt;span style="font-size:10.5pt;"&gt;中下载使用（参见&lt;/span&gt;&lt;span style="font-size: 10.5pt;font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;Adding SDK &lt;/span&gt;&lt;span style="font-size:10.5pt;"&gt;组件）。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0cm;margin-bottom:.0001pt;text-indent:21.0pt"&gt;&lt;strong&gt;&lt;span style="font-size:10.5pt;"&gt;注意&lt;/span&gt;&lt;/strong&gt;&lt;span style="font-size:10.5pt;"&gt;：要在一个&lt;/span&gt;&lt;span style="font-size:10.5pt;font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;MapView&lt;/span&gt;&lt;span style="font-size:10.5pt;"&gt;中显示谷歌地图数据，你必须注册谷歌地图服务并获得一个&lt;/span&gt;&lt;span style="font-size: 10.5pt;font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;Maps API Key&lt;/span&gt;&lt;span style="font-size:10.5pt;"&gt;（地图应用编程接口密钥）。要了解有关如何获得一个&lt;/span&gt;&lt;span style="font-size:10.5pt; font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;Maps API Key&lt;/span&gt;&lt;span style="font-size: 10.5pt;"&gt;（地图应用编程接口密钥）的信息，参见&lt;/span&gt;&lt;span style="font-size:10.5pt;font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt; &lt;a href="http://code.google.com/android/add-ons/google-apis/mapkey.html"&gt;&lt;span style="font-family:宋体;"&gt;&lt;span&gt;获得&lt;span&gt;一个地图应用编程接口密钥（&lt;/span&gt;&lt;/span&gt;btaining a Maps API Key)&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-size:10.5pt;"&gt;。&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;&lt;img src="http://www.cnblogs.com/over140/aggbug/2327867.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/over140/archive/2012/01/20/2327867.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/over140/archive/2012/01/20/2327865.html</id><title type="text">Android中文API（146） —— Display</title><summary type="text">本章内容android.view.Display章节，版本为Android 4.0 r1，翻译来自："州伟"，再次感谢他 ！期待你一起参与翻译Android的相关资料，联系我over140@gmail.com。</summary><published>2012-01-20T06:31:00Z</published><updated>2012-01-20T06:31:00Z</updated><author><name>农民伯伯</name><uri>http://www.cnblogs.com/over140/</uri></author><link rel="alternate" href="http://www.cnblogs.com/over140/archive/2012/01/20/2327865.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/over140/archive/2012/01/20/2327865.html"/><content type="html">&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;p&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;前言&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;本章内容android.view.Display章节，版本为Android 4.0 r1，翻译来自："州伟"，再次感谢他 ！期待你一起参与翻译Android的相关资料，联系我over140@gmail.com。 &lt;/p&gt; &lt;p&gt;&lt;/p&gt; &lt;div&gt; &lt;p&gt;&lt;strong style="color: red"&gt;声明&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;欢迎转载，但请保留文章原始出处:)&amp;nbsp;&lt;/p&gt; &lt;p&gt;博客园：&lt;a title="http://www.cnblogs.com" href="http://www.cnblogs.com/"&gt;http://www.cnblogs.com/&lt;/a&gt;&lt;/p&gt;　　　　Android中文翻译组：&lt;a title="http://androidbox.sinaapp.com/" href="http://androidbox.sinaapp.com/"&gt;http://androidbox.sinaapp.com/&lt;/a&gt;&lt;/div&gt;  &lt;p&gt;&lt;/p&gt;&lt;/div&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;strong&gt;&amp;nbsp;&lt;/strong&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;  &lt;p style="text-align:center;" align="center"&gt;&lt;strong&gt;&lt;span style="font-size: 18.0pt"&gt;Display&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="text-align:center" align="center"&gt;&lt;span style="font-family:宋体;"&gt;译者署名：州伟&lt;/span&gt; &lt;/p&gt;  &lt;p style="text-align:center" align="center"&gt;&lt;span style="font-family:宋体;"&gt;译者邮箱：&lt;/span&gt;guozwhero@gmail.com&lt;/p&gt;  &lt;p style="text-align:center" align="center"&gt;&lt;span style="font-family:宋体;"&gt;版本：&lt;/span&gt;Android 4.0 r1&lt;/p&gt;  &lt;p style="text-align:left" align="left"&gt;&lt;/p&gt;  &lt;p style="text-align:left" align="left"&gt;&lt;strong&gt;&lt;span style="font-size:12.0pt;font-family:宋体;"&gt;结构&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt" align="left"&gt;&lt;span style="font-family:宋体;"&gt;继承关系&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left; text-indent:21.0pt" align="left"&gt;&lt;strong&gt;&lt;em&gt;public class &lt;span style="color:#C00000"&gt;Display extends &lt;span style="color:#C00000"&gt;Object&lt;/span&gt;&lt;/span&gt;&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left" align="left"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left; text-indent:21.0pt" align="left"&gt;java.lang.Object&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left; text-indent:21.0pt" align="left"&gt;android.view.Display&lt;/p&gt;  &lt;p style="text-align:left" align="left"&gt;&lt;/p&gt;  &lt;p style="text-align:left" align="left"&gt;&lt;strong&gt;&lt;span style="font-size:12.0pt;font-family:宋体;"&gt;类概述&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt" align="left"&gt;Display&lt;span style="font-family:宋体;"&gt;类提供关于屏幕尺寸和分辨率的信息。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left" align="left"&gt;&lt;/p&gt;  &lt;p style="text-align:left" align="left"&gt;&lt;strong&gt;&lt;span style="font-size:12.0pt;font-family:宋体;"&gt;常量&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span style="color:black;background:#D9D9D9;"&gt;&lt;a href="http://developer.android.com/reference/android/view/Display.html"&gt;&lt;span style="color:black"&gt;public static final int &lt;strong&gt;&lt;span style="color:black"&gt;DEFAULT_DISPLAY&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/a&gt;&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left" align="left"&gt;&lt;span style="font-family:宋体; color:black"&gt;缺省的&lt;/span&gt;&lt;span style="color:black"&gt;Display id.&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left; text-indent:21.0pt" align="left"&gt;&lt;span style="font-family:宋体;color:black"&gt;常量值：&lt;/span&gt;&lt;span&gt;0 (0x00000000)&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left" align="left"&gt;&lt;/p&gt;  &lt;p style="text-align:left" align="left"&gt;&lt;strong&gt;&lt;span style="font-size:12.0pt;font-family:宋体;"&gt;公共方法&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span&gt;&lt;span style="background:#D9D9D9;"&gt;public int &lt;/span&gt;&lt;/span&gt;&lt;strong&gt;&lt;span style="background:#D9D9D9;"&gt;getDisplayId&lt;/span&gt;&lt;/strong&gt;&lt;span style="background:#D9D9D9;"&gt; ()&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-family:宋体;"&gt;返回此屏幕的索引。此方法&lt;span&gt;目前未定义，请不要使用。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span&gt;&lt;span style="background:#D9D9D9;"&gt;public int &lt;/span&gt;&lt;/span&gt;&lt;strong&gt;&lt;span style="background:#D9D9D9;"&gt;getHeight&lt;/span&gt;&lt;/strong&gt;&lt;span style="background:#D9D9D9;"&gt; ()&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span style="font-family:宋体;background:yellow;"&gt;此方法不建议使用&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span style="font-family:宋体;background:yellow;"&gt;请使用&lt;/span&gt;&lt;span style="background:yellow;"&gt;getSize(Point) &lt;/span&gt;&lt;span style="font-family:宋体;background:yellow;"&gt;代替&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span&gt;&lt;span style="background:#D9D9D9;"&gt;public void &lt;/span&gt;&lt;/span&gt;&lt;strong&gt;&lt;span style="background:#D9D9D9;"&gt;getMetrics&lt;/span&gt;&lt;/strong&gt;&lt;span style="background:#D9D9D9;"&gt; &lt;span&gt;(&lt;a href="http://developer.android.com/reference/android/util/DisplayMetrics.html"&gt;DisplayMetrics&lt;/a&gt; outMetrics)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span style="font-family:宋体;"&gt;获取描述此屏幕尺寸和分辨率的&lt;/span&gt;DisplayMetrics&lt;span style="font-family:宋体;"&gt;对象。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span&gt;&lt;span style="font-family: 宋体;"&gt;此大小是基于当前屏幕旋转而调整的。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span&gt;&lt;span style="font-family:宋体;"&gt;此方法返回的大小并不一定代表实际屏幕的原始大小（原始分辨率）。返回的大小可能会有所调整，以排除某些总是可见的系统布置元素。 &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span style="font-family:宋体;"&gt;这也可能是被调整以提供与旧的为较小的初始的应用一致，初始应用最初是为较小的屏幕而设计的。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="margin-left:21.0pt;text-indent:21.0pt"&gt;&lt;span style="font-family:宋体;"&gt;参数&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; outMetrics&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="font-family:宋体;"&gt;一个&lt;/span&gt; DisplayMetrics &lt;span style="font-family:宋体;"&gt;对象接收&lt;/span&gt; metrics.&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span style="background:#D9D9D9;"&gt;public int &lt;strong&gt;getOrientation&lt;/strong&gt; ()&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span style="font-family:宋体;background:yellow;"&gt;此方法不建议使用&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span style="font-family:宋体;background:yellow;"&gt;请使用&lt;/span&gt;&lt;span style="background:yellow;"&gt;&lt;a href="http://developer.android.com/reference/android/view/Display.html#getRotation%28%29"&gt;&lt;span style="color:#006699;"&gt;getRotation()&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体; background:yellow;"&gt;代替&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="font-family:宋体;"&gt;返回值&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="font-family:宋体;"&gt;屏幕的方向&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;"&gt;&lt;span style="background:#D9D9D9;"&gt;public int &lt;strong&gt;getPixelFormat&lt;/strong&gt; ()&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;"&gt;&lt;span style="font-family:宋体;"&gt;返回本机屏幕像素格式。返回值可能是一个&lt;/span&gt;&lt;span&gt;&lt;span&gt;int&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span style="font-family:宋体;"&gt;类型的&lt;/span&gt;&lt;/span&gt;&lt;a href="http://developer.android.com/reference/android/graphics/PixelFormat.html"&gt;&lt;span&gt;&lt;span&gt;&lt;span style=" color:#006699;background:white"&gt;PixelFormat&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span&gt;&lt;span style="font-family:宋体;"&gt;的常量&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-indent:21.0pt"&gt;&lt;span style="font-family:宋体;"&gt;返回&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="font-family:宋体;"&gt;可能是一个&lt;/span&gt;int&lt;span style="font-family:宋体;"&gt;类型的&lt;/span&gt;&lt;a href="http://developer.android.com/reference/android/graphics/PixelFormat.html"&gt;&lt;span style="color:#006699;background:white"&gt;PixelFormat&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:宋体;"&gt;的常量&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span style="background:#D9D9D9;"&gt;public void &lt;strong&gt;getRectSize&lt;/strong&gt; (Rect outSize)&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;"&gt;&lt;span style="font-family:宋体;"&gt;获取屏幕矩形的大小，以像素为单位&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;"&gt;&lt;span style="font-family:宋体;"&gt;参数&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OutSize&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="font-family:宋体;"&gt;一个&lt;/span&gt;Rect&lt;span style="font-family:宋体;"&gt;对象接受大小的信息&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;"&gt;&lt;span style="font-family:宋体;"&gt;参见&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt; text-indent:21.0pt"&gt;getSize(Point)&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;"&gt;&lt;span style="background:#D9D9D9;"&gt;public float &lt;strong&gt;getRefreshRate&lt;/strong&gt; ()&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;"&gt;&lt;span style="font-family:宋体;"&gt;返回屏幕帧每秒的刷新率。&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span style="background:#D9D9D9;"&gt;public int &lt;strong&gt;getRotation&lt;/strong&gt; ()&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span style="font-family:宋体;"&gt;返回从&amp;#8220;自然&amp;#8221;&lt;/span&gt;(natural)&lt;span style="font-family:宋体;"&gt;方向的屏幕旋转度数。返回值可能&lt;/span&gt;Surface.ROTATION_0&lt;span style="font-family:宋体;"&gt;（不旋转），&lt;/span&gt;Surface.ROTATION_90&lt;span style="font-family:宋体;"&gt;，&lt;/span&gt;Surface.ROTATION_180&lt;span style="font-family:宋体;"&gt;，或&lt;/span&gt;Surface.ROTATION_270&lt;span style="font-family:宋体;"&gt;。例如：如果设备有一个宽的屏幕，使用者转动进入横向，此时返回值可能是&lt;/span&gt;Surface.ROTATION_90 &lt;span style="font-family:宋体;"&gt;或者&lt;/span&gt;&lt;span&gt; Surface.ROTATION_270&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;，取决于它旋转的方向。角度是绘制图形在屏幕的旋转，这是设备物理旋转的相反方向。例如：如果该设备是逆时针旋转&lt;/span&gt;90&lt;span style="font-family:宋体;"&gt;度，以弥补渲染会顺时针旋转&lt;/span&gt;90&lt;span style="font-family:宋体;"&gt;度，从而这里的返回值将会是&lt;/span&gt;Surface.ROTATION_90&lt;span style="font-family:宋体;"&gt;。&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span style="background:#D9D9D9;"&gt;public void &lt;strong&gt;getSize&lt;/strong&gt; (Point outSize)&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span style="font-family:宋体;"&gt;获取屏幕的尺寸，以像素为单位。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span style="font-family:宋体;"&gt;注意，此值不应被用于计算布局，&lt;span&gt;&lt;span&gt;因为一个设备沿着显示通常有屏幕装饰&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-family:宋体;"&gt;例如状态栏)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-family:宋体;"&gt;，&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-family:宋体;"&gt;减少的应用空间使得原尺寸与之不符。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;布局应该改用窗口的大小。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span style="font-family:宋体;"&gt;此大小是基于当前屏幕旋转而调整的。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span style="font-family:宋体;"&gt;此方法返回的大小并不一定代表实际屏幕的原始大小（原始分辨率）。返回的大小可能会有所调整，以排除某些系统总是可见的装饰元素。这也可能是缩放，提供与旧，最初是为小屏幕设计的应用程序的兼容性。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-indent:21.0pt"&gt;&lt;span style="font-family:宋体;"&gt;参数&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; outsize &amp;nbsp;&amp;nbsp; Point&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;对象接收大小的信息。&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span style="background:#D9D9D9;"&gt;public int &lt;strong&gt;getWidth&lt;/strong&gt; ()&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span style="font-family:宋体;background:yellow;"&gt;此方法不建议使用&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span style="font-family:宋体;background:yellow;"&gt;请使用&lt;/span&gt;&lt;span style="background:yellow;"&gt;getSize(Point) &lt;/span&gt;&lt;span style="font-family:宋体;background:yellow;"&gt;代替&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left" align="left"&gt;&lt;/p&gt;  &lt;p style="text-align:left" align="left"&gt;&lt;strong&gt;&lt;span style="font-size:12.0pt;font-family:宋体;"&gt;补充&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt" align="left"&gt;&lt;span style="font-family:宋体;"&gt;文章精选&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt" align="left"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;a href="http://618119.com/archives/2011/01/12/205.html"&gt;&lt;span style="font-family:宋体;"&gt;关于&lt;/span&gt;Android&lt;span style="font-family:宋体;"&gt;的&lt;/span&gt;nodpi,xhdpi,hdpi,mdpi,ldpi&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;&lt;img src="http://www.cnblogs.com/over140/aggbug/2327865.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/over140/archive/2012/01/20/2327865.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/over140/archive/2012/01/18/2325758.html</id><title type="text">我的2011</title><summary type="text">今年是自己的Android年，忙忙碌碌在各个项目上，翻译组和上课固定的占据了每周业余时间的一部分时间，还会挤时间看电影、看书、自己做饭，尽可能的均衡生活、学习和工作。这里记录分享这一年的点滴历程，也祝大家在新的一年里龙马精神！</summary><published>2012-01-18T14:54:00Z</published><updated>2012-01-18T14:54:00Z</updated><author><name>农民伯伯</name><uri>http://www.cnblogs.com/over140/</uri></author><link rel="alternate" href="http://www.cnblogs.com/over140/archive/2012/01/18/2325758.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/over140/archive/2012/01/18/2325758.html"/><content type="html">&lt;div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;前言祝语 &lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;今年是自己的Android年，忙忙碌碌在各个项目上，翻译组和上课固定的占据了每周业余时间的一部分时间，还会挤时间看电影、看书、自己做饭，尽可能的均衡生活、学习和工作。这里记录分享这一年的点滴历程，也祝大家在新的一年里龙马精神！&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;往年回顾&lt;/p&gt;&lt;p&gt;&lt;a id="CategoryEntryList1_EntryStoryList_Entries_TitleUrl_0" href="http://www.cnblogs.com/over140/archive/2011/01/28/1946600.html"&gt;伯伯2010年终总结 [ 程序 | 电影 | 书籍 | 游玩 ... ]&lt;/a&gt; &lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;a id="CategoryEntryList1_EntryStoryList_Entries_TitleUrl_1" href="http://www.cnblogs.com/over140/archive/2010/02/13/1668048.html"&gt;农民伯伯2009年夜总结&lt;/a&gt; &lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;程序人生&lt;/strong&gt;&lt;/p&gt;　　本博值得推荐的文章：&lt;/div&gt;&lt;p&gt;&lt;a id="homepage1_HomePageDays_ctl04_DayList_TitleUrl_0" href="http://www.cnblogs.com/over140/archive/2011/10/08/2201707.html"&gt;Android中文API合集(6) + 开发者指南合集(1)  (chm格式)&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a id="homepage1_HomePageDays_DaysList_DayItem_2_DayList_2_TitleUrl_0" href="http://www.cnblogs.com/over140/archive/2012/01/04/2308492.html"&gt;Android应用开发提高系列（1）&amp;#8212;&amp;#8212;《Practical Java 中文版》读书笔记（上）&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a id="homepage1_HomePageDays_DaysList_DayItem_0_DayList_0_TitleUrl_0" href="http://www.cnblogs.com/over140/archive/2012/01/09/2312434.html"&gt;Android应用开发提高系列（2）&amp;#8212;&amp;#8212;《Practical Java 中文版》读书笔记（下）&lt;/a&gt; &lt;/p&gt;&lt;p&gt;&lt;a id="CategoryEntryList1_EntryStoryList_Entries_TitleUrl_3" href="http://www.cnblogs.com/over140/archive/2011/11/23/2259367.html"&gt;Android动态加载jar/dex&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a id="CategoryEntryList1_EntryStoryList_Entries_TitleUrl_10" href="http://www.cnblogs.com/over140/archive/2011/04/25/2026812.html"&gt;[Android]文本框实现搜索和清空效果&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a id="CategoryEntryList1_EntryStoryList_Entries_TitleUrl_11" href="http://www.cnblogs.com/over140/archive/2011/04/06/2006615.html"&gt;[Android]ListView性能优化之视图缓存(续)&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a id="CategoryEntryList1_EntryStoryList_Entries_TitleUrl_14" href="http://www.cnblogs.com/over140/archive/2011/03/02/1968042.html"&gt;新浪微博布局学习&amp;#8212;&amp;#8212;妙用TabHost&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a id="CategoryEntryList1_EntryStoryList_Entries_TitleUrl_13" href="http://www.cnblogs.com/over140/archive/2011/03/14/1981196.html"&gt;新浪微博布局学习&amp;#8212;&amp;#8212;活用RelativeLayout&lt;/a&gt; &lt;/p&gt;&lt;p&gt;推荐Android站点&lt;/p&gt;&lt;p&gt;&lt;a title="谦虚的天下" href="http://www.cnblogs.com/qianxudetianxia/"&gt;谦虚的天下&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a title="蝈蝈俊Android" href="http://blog.csdn.net/ghj1976/article/category/804848"&gt;蝈蝈俊Android&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://blog.csdn.net/tuhuolong/article/category/714930" title="tuhuolong的专栏"&gt;tuhuolong的专栏&lt;/a&gt; &lt;/p&gt;&lt;p&gt;Android中文翻译组&lt;/p&gt;&lt;p&gt;&lt;a title="http://androidbox.sinaapp.com/" href="http://androidbox.sinaapp.com/"&gt;http://androidbox.sinaapp.com/&lt;/a&gt; &lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;电影动漫&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;国内、港台&lt;/p&gt;&lt;p&gt;非诚勿扰2　　也没有传说的那么烂，演技在这里，还可以吧:) &lt;/p&gt;&lt;p&gt;80后　　还不错，不知与山楂花之恋比哪个显得更青涩一些 :) &lt;/p&gt;&lt;p&gt;飞砂风中转　　古惑仔搞笑版，看起来蛮不习惯的，古惑仔系列片影响几代人，不是一部搞笑版能抹掉的... &lt;/p&gt;&lt;p&gt;单身男女　　失去才懂得珍惜 &lt;/p&gt;&lt;p&gt;关云长　　 &lt;/p&gt;&lt;p&gt;不是闹着玩的　　　　 &lt;/p&gt;&lt;p&gt;人在囧途&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;建国伟业　　皮影戏...&lt;/p&gt;&lt;p&gt;大唐双龙传[04版][42集]　　好堕落，果然是武侠迷&lt;/p&gt;&lt;p&gt;钢的琴　　想说三点：1. 年轻人，孩子是压力也是动力；2. 确实是钢的琴，钢做的琴，坚持、执着和团结等等都是困难的克星，试问一个这么多克星怎么能不被战胜？ 3. 怀念、想念以及期盼能有一群战友、一群工友、一群同学能一条心的办一件事。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color: red;"&gt;[推荐]&lt;/span&gt;盲井　　感谢好友推荐！&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color: red;"&gt;[推荐]&lt;/span&gt;盲山　　知识改变命运&amp;#8212;&amp;#8212;这是我看完的感受，如果不是那个小孩帮忙寄信恐怕就没希望了。&lt;/p&gt;&lt;p&gt;&lt;span style="color: red;"&gt;[推荐]&lt;/span&gt;最爱　　郭富城+章子怡，演技派的实力不容置疑。有感：活着就是一种态度。 &lt;/p&gt;&lt;p&gt;失恋33天　　还不错&amp;nbsp; &lt;/p&gt;&lt;p&gt;龙门飞甲[电影院]　　 &lt;/p&gt;&lt;p&gt;国外 &lt;br /&gt;&lt;/p&gt;&lt;p&gt;怒海争锋　　海贼王的关系，对海战挺感兴趣的 &lt;/p&gt;&lt;p&gt;&lt;span style="color: red;"&gt;[推荐]&lt;/span&gt;接触未来　　值得一看，相信和不相信都是一种信仰。 &lt;/p&gt;&lt;p&gt;欲望都市2　　除了人老了一点还是蛮不错的。 &lt;/p&gt;&lt;p&gt;仙境之桥　　有点烂尾，当你看到相信幻境存在的时候，女主角死了，非得去强调这是幻境干什么。。。&lt;/p&gt;&lt;p&gt;洛杉矶之战　　还行吧！期待的大场面还真只有封面的那一小段，成本七千万美元。 &lt;/p&gt;&lt;p&gt;范海辛　　吸血鬼题材的电影，虽然比较早但特效还行。据说吸血鬼类型的片子还分文艺型的?! &lt;/p&gt;&lt;p&gt;赤焰战场　　几个老家伙，嘿嘿~~~ &lt;/p&gt;&lt;p&gt;&lt;span style="color: red;"&gt;[推荐]&lt;/span&gt;新熟女时代　　日剧　　低俗的电影名，不俗的内容。&amp;#8212;&amp;#8212;[转评]离不开你但她却突然消失；你以为她可以追求但她却有男友；你以为 她只喜欢你但她谁都可以；当你后悔想把她追回时她已嫁作人妇；你觉得她过于日常过于繁琐但失去后却发现日子没法继续。&lt;/p&gt;&lt;p&gt;雷神　　3D　　还行，有些画面挺好看的，但3D效果不是很好。 &lt;/p&gt;&lt;p&gt;金馆长对金馆长对金馆长　　韩片，申贤俊经典的哈哈哈表情的电影 &lt;/p&gt;&lt;p&gt;功夫熊猫2　　UME安贞影院　　还不错，武术打斗挺好玩的。 &lt;/p&gt;&lt;p&gt;天国王朝　　电影频道 佳片有约，领略宗教的力量 &lt;/p&gt;&lt;p&gt;&lt;span style="color: red;"&gt;[推荐]&lt;/span&gt;初恋这件小事　　励志片，看完这片对泰国有很大改观。 &lt;/p&gt;&lt;p&gt;创世纪　　效果还不错 &lt;/p&gt;&lt;p&gt;天际浩劫 &lt;/p&gt;&lt;div&gt;　　　　&lt;span style="color: red;"&gt;[推荐]&lt;/span&gt;三个大傻大闹宝莱坞　　在高铁上看的，好电影&lt;/div&gt;&lt;p&gt;太空运输 &lt;/p&gt;&lt;p&gt;女巫季节　　 &lt;/p&gt;&lt;p&gt;&lt;span style="color: red;"&gt;[推荐]&lt;/span&gt;深夜食堂(日剧、连续剧)　　很温馨，强烈推荐！ &lt;/p&gt;&lt;p&gt;&lt;span style="color: red;"&gt;[推荐]&lt;/span&gt;泰诺星球 - 第一季　　我是科幻迷，非常好看 &lt;/p&gt;&lt;p&gt;&lt;span style="color: red;"&gt;[推荐]&lt;/span&gt;斯巴达克斯 - 竞技场之神、血与沙　　&lt;/p&gt;&lt;p&gt;动漫 &lt;br /&gt;&lt;/p&gt;&lt;p&gt;凯尔经的秘密　　宗教电影，画面很精美，不懂装懂中... &lt;/p&gt;&lt;p&gt;哈尔的移动城堡　　宫崎骏　　最喜欢里面的火&amp;#8212;&amp;#8212;阿尔法特。 &lt;/p&gt;&lt;p&gt;借东西的小人阿莉埃蒂　　宫崎骏　　守护传说&lt;/p&gt;&lt;p&gt;浪客剑心--追忆篇　　让我想起了 甲贺忍法帖 ，凄美...&lt;/p&gt;&lt;p&gt;古城荆棘王　　梦幻由于某些介质也能成真。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;书籍阅读&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;《历史是个什么玩意儿1》 　　历史是死的，人是活的，就看怎么来说这事了。&lt;/p&gt;&lt;div&gt;　　《制胜策略》　　微软研发、制胜策略　　&lt;/div&gt;&lt;p&gt;《复乐园》　　渡边淳一的书，抛开里面情色部分，对老人的关注还是很值得参考的。让我想起了曾经在网吧当网管时老板娘的父亲找我要A片的事，请多多体谅身边的老年人:)&lt;/p&gt;&lt;p&gt;《走出软件作坊》　　书很好，里面谈到的问题很常见，适合成长中的团队。 &lt;/p&gt;&lt;p&gt;《北京法源寺》 　　李敖的小说，不敢妄加评论&lt;/p&gt;&lt;p&gt;《大败局2》　　了解中国政商文化，不做体验式的企业家。&lt;/p&gt;&lt;p&gt;《明朝那些事》 　　共七部，以史为鉴。&lt;/p&gt;&lt;p&gt;《与"鬼"为邻》 　　想了解日本的朋友不妨一看。&lt;/p&gt;&lt;p&gt;《电影中不可能的物理学》　　科幻迷必看书籍 :) &lt;br /&gt;&lt;/p&gt;&lt;p&gt;《激荡三十年》 &lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;户外游玩&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;云台山、郭亮洞　　十一跟的团，在绿野找的，非常漂亮！&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;说说语录&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;1. 女孩的胃都是葫芦胃吗？&lt;br /&gt;&lt;/p&gt;&lt;div&gt;　　　　吃一点就撑，过一会又饿了&lt;br /&gt;&lt;br /&gt;　　2. 不管你投不投票，结果在那里，不改不变。&lt;br /&gt;&lt;br /&gt;　　3. 乘客您好！车厢内人多拥挤，请没有挤下车的同志等候下站下车。&lt;br /&gt;&lt;br /&gt;　　4. 空气是时间的执行者，腐蚀着这世间万物。&lt;br /&gt;&lt;br /&gt;　　5. 山下的老虎是女人，遇见了千万要躲开&lt;br /&gt;&lt;br /&gt;　　6. 交流不是只问不答，也不是不问也不答，如果仅此而已，只有搜索引擎愿意和你交流。&lt;br /&gt;&lt;br /&gt;　　7. [生活小经验]早上起床很困？做20+个俯卧撑吧，效果谁做谁知道 :)&lt;br /&gt;&lt;br /&gt;　　8. 味千：味道的味，老千的千。&lt;br /&gt;&lt;br /&gt;　　9. 知道有知道的好处，不知道有不知道的好处；知道了就不能不知道了，但是不知道可以知道。&lt;br /&gt;&lt;br /&gt;　　10. 坚持让普通人也能做平凡而伟大的事。&lt;br /&gt;&lt;br /&gt;　　11. 我是争取帝。&lt;br /&gt;　　　　总是争取这个、争取那个&lt;/div&gt; &lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;重要事件&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;第一次个人购买正版软件　　2011-3-25&lt;/p&gt;&lt;p&gt;360版ESET NOD32&lt;br /&gt;&lt;/p&gt;&lt;p&gt;订婚　　2012-1-18（农历腊月25日）&lt;/p&gt;&lt;p&gt;今年去女朋友家过年，然后订婚。&lt;/p&gt;&lt;p&gt;还钱&lt;/p&gt;&lt;p&gt;2010年老家买房欠下的钱今年已经还掉三分之二。&lt;/p&gt;&lt;p&gt;Android翻译组&lt;/p&gt;&lt;p&gt;人数超过300人，官网搭建（开发者指南、API、开源项目、视频专区四个频道），多个合集发布。 &lt;/p&gt;&lt;p&gt;工作&lt;/p&gt;&lt;p&gt;太平洋保险神行太保项目成功上线，实践证明俺是个靠谱的人 :) &lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;新年展望&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;1. 至少在App市场上发布两款个人应用。&lt;br /&gt;&lt;/p&gt;&lt;p&gt;2. 尝试将翻译组现有模式（翻译-审核-发布-合集）转向Wiki模式，本身转向平台作用。&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/over140/aggbug/2325758.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/over140/archive/2012/01/18/2325758.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/over140/archive/2012/01/09/2312434.html</id><title type="text">Android应用开发提高系列（2）——《Practical Java 中文版》读书笔记（下）</title><summary type="text">《Practical Java 中文版》读书笔记（下）</summary><published>2012-01-09T01:52:00Z</published><updated>2012-01-09T01:52:00Z</updated><author><name>农民伯伯</name><uri>http://www.cnblogs.com/over140/</uri></author><link rel="alternate" href="http://www.cnblogs.com/over140/archive/2012/01/09/2312434.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/over140/archive/2012/01/09/2312434.html"/><content type="html">&lt;div&gt;&lt;br /&gt;&lt;div&gt;&lt;p style="line-height: 19px; "&gt;&lt;strong style="color: red; "&gt;声明&lt;/strong&gt;&lt;/p&gt;&lt;p style="line-height: 19px; "&gt;欢迎转载，但请保留文章原始出处:)&amp;nbsp;&lt;br /&gt;&lt;/p&gt;&lt;p style="line-height: 19px; "&gt;博客园：http://www.cnblogs.com&lt;/p&gt;　　　　农民伯伯： http://over140.cnblogs.com&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;系列&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;a id="homepage1_HomePageDays_DaysList_DayItem_0_DayList_0_TitleUrl_0" href="http://www.cnblogs.com/over140/archive/2012/01/04/2308492.html"&gt;Android应用开发提高系列（1）&amp;#8212;&amp;#8212;《Practical Java 中文版》读书笔记（上）&lt;/a&gt; &lt;br /&gt;&lt;/p&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;正文 &lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;　　&lt;span style="color: red;"&gt;注意：条目和用语可能与书籍有所出入，但尽量保持原样加一些自己的理解。&lt;/span&gt;&lt;/div&gt;　　一、性能&lt;p&gt;1. 先把焦点放在设计、数据结构和算法身上&lt;/p&gt;&lt;p&gt;备注：良好的设计、明智的选择数据结构和算法可能比高效代码更重要。&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;2.&amp;nbsp; 不要依赖编译器优化技术&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;3.&amp;nbsp; 理解运行时(runtime)代码优化&lt;/p&gt;&lt;p&gt;备注：JIT将bytecode于运行时转换为本地二进制码，从而提高性能。因此编译后代码被执行次数越多，本机代码生成代价就很合算。 &lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;4.&amp;nbsp; 连接字符串使用StringBuffer要比String快，尤其是大量字符串拼接&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;5.&amp;nbsp; 将对象创建成本降至最小&lt;/p&gt;&lt;p&gt;备注：复用既有对象，不要创建非必要的对象，只在需要的时候才创建它们。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;6.&amp;nbsp; 将同步化(synchronization)降至最低&lt;/p&gt;&lt;p&gt;备注：如果synchronized函数抛出异常，则在异常离开函数之前，锁会自动释放。如果整个函数都需要被同步化，为了产生体积较小且执行速度较快的代码，请优先使用函数修饰符，而不是在函数内使用synchronized代码块。 &lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;7.&amp;nbsp; 尽可能使用stack变量&lt;/p&gt;&lt;p&gt;备注：如果在函数中频繁访问成员变量、静态变量，可以用本地(local)变量替代，最后操作完后再赋值给成员/静态变量。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;8.&amp;nbsp; 尽可能的使用static、final和private函数&lt;/p&gt;&lt;p&gt;备注：此类函数可以在编译期间被静态决议(statically resolved)，而不需要动态议决(dynamic resolved)。（子类无法覆写）&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;9.&amp;nbsp; 类的成员变量、静态变量都有缺省值，务须重复初始化&lt;/p&gt;&lt;p&gt;备注：记住，本地变量没有缺省值（例如函数内定义的变量）。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;10.&amp;nbsp; 尽可能的使用基本数据类型&lt;/p&gt;&lt;p&gt;备注：如int、short、char、boolean，使得代码更快更小。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;11.&amp;nbsp; 不要使用枚举器(Enumeration)和迭代器(Iterator)来遍历Vector&lt;/p&gt;&lt;p&gt;备注：使用for循环+get()&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;12.&amp;nbsp; 使用System.arraycopy()来复制数组&lt;/p&gt;&lt;p&gt;备注：使用System.arraycopy()代替for循环，可以产生更快的代码。如：&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;"&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;void&lt;/span&gt;&amp;nbsp;copyArray(&lt;span style="color: #0000FF;"&gt;int&lt;/span&gt;[]&amp;nbsp;src,&amp;nbsp;&lt;span style="color: #0000FF;"&gt;int&lt;/span&gt;[]&amp;nbsp;dest)&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;int&lt;/span&gt;&amp;nbsp;size&amp;nbsp;=&amp;nbsp;src.length;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.arraycopy(src,&amp;nbsp;0,&amp;nbsp;dest,&amp;nbsp;0,&amp;nbsp;size);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;System.arraycopy()是以native method实现的，可以直接、高效的移动原始数组到目标数组，因此它执行速度更快。 &lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;13.&amp;nbsp; 优先使用数组，然后才考虑Vector和ArrayList，理由：&lt;/p&gt;&lt;p&gt;a).　　Vector的get()是同步的 &lt;/p&gt;&lt;p&gt;b).　　ArrayList基本上就是一个非线程同步的Vector，比Vector要快&lt;/p&gt;&lt;p&gt;c).　　ArrayList和Vector添加元素或移除元素都需要重新整理数组。&lt;/p&gt;&lt;p&gt;备注：不要仅仅因为手上有个数不定的数据需要存储，就毫无选择的使用Vector或ArrayList。可以考虑创建一个足够大的数组，通常这样可能会浪费内存，但性能上的收益可能超过内存方面的代价。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;14.&amp;nbsp; 手工优化代码&lt;/p&gt;&lt;p&gt;a).　　剔除空白函数和无用代码&lt;/p&gt;&lt;div&gt;&lt;div&gt;　　　　　　b).　　削减强度&lt;/div&gt;&lt;p&gt;备注：以更高效的操作替换成本昂贵的操作。一个常见的优化手法是使用复式复制操作符(如+=、-=)。 &lt;/p&gt;&lt;/div&gt;&lt;p&gt;c).　　合并常量 &lt;/p&gt;&lt;p&gt;备注：将变量声明为final，使得操作在编译器就进行。 &lt;/p&gt;&lt;p&gt;d).　　删减相同的子表达式&lt;/p&gt;&lt;p&gt;备注：可用一个临时变量代替重复的表达式。 &lt;/p&gt;&lt;p&gt;e).　　展开循环&lt;/p&gt;&lt;p&gt;备注：如循环次数少且已知循环次数，可展开去掉循环结构，直接访问数组元素。缺点是会产生更多代码。 &lt;/p&gt;&lt;p&gt;f).　　简化代数&lt;/p&gt;&lt;p&gt;备注：使用数学技巧来简化表达式。（例如从1+..+100的问题）&lt;/p&gt;&lt;p&gt;g).　　搬移循环内的不变式&lt;/p&gt;&lt;p&gt;备注：循环内不变化的表达式可用移至循环外，不必重复计算表达式。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;15.&amp;nbsp; 编译为本机代码&lt;/p&gt;&lt;p&gt;备注：将程序的某部分编译为本机二进制代码，然后通过JNI访问。&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;二、多线程&lt;/p&gt;&lt;p&gt;1.&amp;nbsp; 对于实例(instance)函数，同步机制锁定的是对象，而不是函数和代码块。&lt;/p&gt;&lt;p&gt;备注：函数或代码块被声明为synchronized并非意味它在同一时刻只能有一个线程执行（同一对象不同线程调用会阻塞）。Java语言不允许将构造函数声明为synchronized。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;2.&amp;nbsp; 同步实例函数和同步静态函数争取的是不同的locks。&lt;/p&gt;&lt;p&gt;备注：两者均非多线程安全，可以使用实例变量进行同步控制，如(byte[] lock = new byte[0])，比其他任何对象都经济。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;3.&amp;nbsp; 对于synchronized函数中可被修改的数据，应使之成为private，并根据需要提供访问函数。如果访问函数返回的是可变对象，那么可以先克隆该对象。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;4.&amp;nbsp; 避免无谓的同步控制&lt;/p&gt;&lt;p&gt;备注：过度的同步控制可能导致代码死锁或执行缓慢。再次提醒，当一个函数声明为synchronized，所获得的lock是隶属于调用此函数的那个对象。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;5.&amp;nbsp; 访问共享变量时请使用synchronized或volatile&lt;/p&gt;&lt;p&gt;备注：如果并发性很重要，而且不需要更新很多变量，则可以考虑使用volatile。一旦变量被声明为volatile，在每次访问它们时，它们就与主内存进行一致化。如果使用synchronized，只在取得lock和释放lock时候才一致化。 &lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;6.&amp;nbsp; 在单一操作(single operation)中锁定所有用到的对象&lt;/p&gt;&lt;p&gt;备注：如果某个同步函数调用了某个非同步实例函数来修改对象，它是线程安全的。使用同步控制时，一定要对关键字synchronized所作所为牢记在心。它锁定的是对象而非函数或代码。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;7.&amp;nbsp; 以固定而全局性的顺序取得多个locks(机制)以避免死锁。P/181~P/185&lt;/p&gt;&lt;p&gt;备注：嵌入[锁定顺序]需要额外的一些工作、内存和执行时间。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;8.&amp;nbsp; 优先使用notifyAll()而非notify()&lt;/p&gt;&lt;p&gt;备注：notify()和notifyAll()用以唤醒处以等待状态的线程，waite()则让线程进入等待状态。notify()仅仅唤醒一个线程。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;9.&amp;nbsp; 针对wait()和notifyAll()使用旋转锁(spin locks) &lt;/p&gt;&lt;p&gt;备注：旋转锁模式(spin-lock pattern)简洁、廉价，而且能确保等待着某个条件变量的代码能循规蹈矩。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;10.&amp;nbsp; 使用wait()和notifyAll()替代轮询(polling loops)&lt;/p&gt;&lt;p&gt;备注：调用wait()时会释放同步对象锁，暂停（虚悬，suspend）此线程。被暂停的线程不会占用CPU时间，直到被唤醒。如：&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;"&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;void&lt;/span&gt;&amp;nbsp;run()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;int&lt;/span&gt;&amp;nbsp;data;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;while&lt;/span&gt;(&lt;span style="color: #0000FF;"&gt;true&lt;/span&gt;){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;synchronized&lt;/span&gt;&amp;nbsp;(pipe)&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;while&lt;/span&gt;((data&amp;nbsp;=&amp;nbsp;pipe.getDate())&amp;nbsp;==&amp;nbsp;0){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;try&lt;/span&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pipe.waite();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;catch&lt;/span&gt;(InterruptedException&amp;nbsp;e){}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;Process&amp;nbsp;Data&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt; &lt;p&gt;11.&amp;nbsp; 不要对已锁定对象的对象引用重新赋值。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;12.&amp;nbsp; 不要调用stop()和suspend()&lt;/p&gt;&lt;p&gt;备注：stop()中止一个线程时，会释放线程持有的所有locks，有搅乱内部数据的风险；suspend()暂时悬挂起一个线程，但不会释放持有的locks，可能带来死锁的风险。两种都会引发不可预测的行为和不正确的行为。&lt;/p&gt;&lt;p&gt;当线程的run()结束时，线程就中止了运行。可以用轮询+变量来控制，如下代码：&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;"&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;private&lt;/span&gt;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;volatile&lt;/span&gt;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;boolean&lt;/span&gt;&amp;nbsp;stop;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;void&lt;/span&gt;&amp;nbsp;stopThread()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;stop&amp;nbsp;=&amp;nbsp;&lt;span style="color: #0000FF;"&gt;true&lt;/span&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;void&lt;/span&gt;&amp;nbsp;run()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;while&lt;/span&gt;(!stop){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;Process&amp;nbsp;Data&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;&lt;/div&gt;&lt;p&gt;注意：这里使用了关键字volatile，由于Java允许线程在其 私有专用内存 中保留主内存变量的副本（可以优化），线程1对线程2调用了stopThread()，但线程2可能不会及时察觉到stop主内存变量已变化，导致不能及时中止线程。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;三、类与接口 &lt;br /&gt;&lt;/p&gt;&lt;p&gt;1.&amp;nbsp; 实现一个final类(immutable class 不可变类)时，请遵循下列规则：&lt;/p&gt;&lt;p&gt;a).　声明所有数据为private&lt;/p&gt;&lt;p&gt;b).&amp;nbsp; 只提供取值函数(getter)，不提供赋值函数(setter)&lt;/p&gt;&lt;p&gt;c).&amp;nbsp; 在构造函数中设置有实例数据&lt;/p&gt;&lt;p&gt;d).&amp;nbsp; 如果函数返回、接受引用final对象，请克隆这个对象。&lt;/p&gt;&lt;p&gt;e).&amp;nbsp; 区别浅层拷贝和深层拷贝应用场景。如拷贝Vector需要使用深层拷贝。 &lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;2.&amp;nbsp; 实现clone()时记得调用super.clone()&lt;/p&gt;&lt;p&gt;备注：不管是浅层拷贝还是深层拷贝都需要调用super.clone()。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;3.&amp;nbsp; 别只依赖finalize()清理内存以外的资源&lt;/p&gt;&lt;p&gt;备注：finalize()函数只有在垃圾回收器释放对象占用的空间之前才会被调用，回收时可能并非所有符合回收条件的对象都被回收，也无法保证是否被调用、何时调用。实现finalize()方法时记得调用super.finalize()。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;4.&amp;nbsp; 在构造函数内应避免调用非final函数，以免被覆写而改变初衷。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;结束&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;书是从朋友那边借过来的，拿到手也有一段时间，磨磨唧唧好多天才看了几十页，而余下部分从上篇文章到这篇文章也不过才3-5天。发现以这种方式来看书也不错，一方面能加快速度，一方面由于要写文章更加认真细读，还能提炼把书读薄记录分享出来，实在是很适合我这样的 :)&lt;br /&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/over140/aggbug/2312434.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/over140/archive/2012/01/09/2312434.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/over140/archive/2012/01/09/2316809.html</id><title type="text">Android中文API（145） —— NotificationManager</title><summary type="text">本章内容android.app.NotifacationManager章节，版本为Android 4.0 r1，翻译来自："liliang1222"，再次感谢他 ！期待你一起参与翻译Android的相关资料，联系我over140@gmail.com。</summary><published>2012-01-09T01:45:00Z</published><updated>2012-01-09T01:45:00Z</updated><author><name>农民伯伯</name><uri>http://www.cnblogs.com/over140/</uri></author><link rel="alternate" href="http://www.cnblogs.com/over140/archive/2012/01/09/2316809.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/over140/archive/2012/01/09/2316809.html"/><content type="html">&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;p&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;前言&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;本章内容android.app.NotifacationManager章节，版本为Android 4.0 r1，翻译来自："liliang1222"，再次感谢他 ！期待你一起参与翻译Android的相关资料，联系我over140@gmail.com。 &lt;/p&gt; &lt;p&gt;&lt;/p&gt; &lt;div&gt; &lt;p&gt;&lt;strong style="color: red"&gt;声明&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;欢迎转载，但请保留文章原始出处:)&amp;nbsp;&lt;/p&gt; &lt;p&gt;博客园：&lt;a title="http://www.cnblogs.com" href="http://www.cnblogs.com/"&gt;http://www.cnblogs.com/&lt;/a&gt;&lt;/p&gt;　　　　Android中文翻译组：&lt;a title="http://androidbox.sinaapp.com/" href="http://androidbox.sinaapp.com/"&gt;http://androidbox.sinaapp.com/&lt;/a&gt;&lt;/div&gt;  &lt;p&gt;&lt;/p&gt;&lt;/div&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;strong&gt;&amp;nbsp;&lt;/strong&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;  &lt;strong&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div&gt;  &lt;p style="text-align:center;" align="center"&gt;&lt;strong&gt;&lt;span style="font-size:18.0pt;"&gt;NotificationManager&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="text-align:center" align="center"&gt;&lt;span style="font-family:宋体;"&gt;译者署名：&lt;/span&gt; liliang1222&lt;/p&gt;  &lt;p style="text-align:center" align="center"&gt;&lt;span style="font-family:宋体;"&gt;版本：&lt;/span&gt;Android 4.0 r1&lt;/p&gt;  &lt;p style="text-align:left" align="left"&gt;&lt;/p&gt;  &lt;p style="text-align:left" align="left"&gt;&lt;strong&gt;&lt;span style="font-size:12.0pt;font-family:宋体;"&gt;结构&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt" align="left"&gt;&lt;span style="font-family:宋体;"&gt;继承关系&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left; text-indent:21.0pt" align="left"&gt;&lt;strong&gt;&lt;em&gt;public class &lt;span style="color:#C00000;"&gt;NotificationManager extends &lt;span style="color:#C00000"&gt;Object&lt;/span&gt;&lt;/span&gt;&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left" align="left"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left; text-indent:21.0pt" align="left"&gt;java.lang.Object&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left; text-indent:21.0pt" align="left"&gt;android.app.NotificationManager&lt;/p&gt;  &lt;p style="text-align:left" align="left"&gt;&lt;/p&gt;  &lt;p style="text-align:left" align="left"&gt;&lt;strong&gt;&lt;span style="font-size:12.0pt;font-family:宋体;"&gt;类概述&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt" align="left"&gt;&lt;span style="font-family:宋体;"&gt;该类用来向用户通知发生的事情。用来告诉用户在后台发生的某些事情。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt" align="left"&gt;&lt;span style="font-family:宋体;"&gt;通知有下列一些形式：&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.55pt;text-align:left; text-indent:-21.0pt;" align="left"&gt;&lt;span style="font-size:7.5pt;font-family:Wingdings;"&gt;&lt;span&gt;*&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;在状态栏中显示一个图片，可以通过&lt;/span&gt;launcher&lt;span style="font-family: 宋体;"&gt;来访问（当用户点击该图片会启动一个预先定义好的&lt;/span&gt;intent&lt;span style="font-family:宋体;"&gt;）&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.55pt;text-align:left; text-indent:-21.0pt;" align="left"&gt;&lt;span style="font-size:7.5pt;font-family:Wingdings;"&gt;&lt;span&gt;*&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;打开或者闪烁设备上的&lt;/span&gt;LED&lt;span style="font-family:宋体;"&gt;灯&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.55pt;text-align:left; text-indent:-21.0pt;" align="left"&gt;&lt;span style="font-size:7.5pt;font-family:Wingdings;"&gt;&lt;span&gt;*&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;或者通知用户通过闪烁的背光灯、播放声音或者震动&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt" align="left"&gt;&lt;span style="font-family:宋体;"&gt;每个通知方法接受一个整型的&lt;/span&gt;id&lt;span style="font-family:宋体;"&gt;，还有一个字符串的标签参数可选，该参数可以为空。这两个参数被用来组成一对（&lt;/span&gt;tag&lt;span style="font-family:宋体;"&gt;，&lt;/span&gt;id&lt;span style="font-family:宋体;"&gt;）或者如果标签没有指定则为（&lt;/span&gt;null&lt;span style="font-family:宋体;"&gt;，&lt;/span&gt;id&lt;span style="font-family:宋体;"&gt;）。这对参数用来在应用程序和系统中标识该通知。所以这对参数在你的程序中应该唯一。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt" align="left"&gt;&lt;span style="font-family:宋体;"&gt;如果你在通知方法时传递该参数对（&lt;/span&gt;tag&lt;span style="font-family:宋体;"&gt;，&lt;/span&gt;id&lt;span style="font-family:宋体;"&gt;）和一些新的通知参数，如果（&lt;/span&gt;tag&lt;span style="font-family:宋体;"&gt;，&lt;/span&gt;id&lt;span style="font-family:宋体;"&gt;）对应的通知应经在运行，则对应的通知会被更新。举个例子来说：如果你传递一个新的状态栏图片，状态栏中老的图片会被新的图片所替换。该（&lt;/span&gt;tag&lt;span style="font-family:宋体;"&gt;，&lt;/span&gt;id&lt;span style="font-family:宋体;"&gt;）也用来传递给&lt;/span&gt;cancel&lt;span style="font-family:宋体;"&gt;（&lt;/span&gt;Id&lt;span style="font-family:宋体;"&gt;）或者&lt;/span&gt;cancel&lt;span style="font-family:宋体;"&gt;（&lt;/span&gt;String&lt;span style="font-family:宋体;"&gt;，&lt;/span&gt;int&lt;span style="font-family:宋体;"&gt;）方法来清除这些通知。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;NotificationManager&lt;span style="font-family:宋体;"&gt;不用实例化，可以通过&lt;/span&gt;getSystemService&lt;span style="font-family:宋体;"&gt;（&lt;/span&gt;String&lt;span style="font-family:宋体;"&gt;）方法来获得。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left" align="left"&gt;&lt;span style="font-family:宋体;"&gt;开发者指南：创建一个通知，请阅读&lt;/span&gt;&lt;span&gt;&lt;a href="http://www.cnblogs.com/over140/category/284304.html"&gt;Status Bar Notifications&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;开发者指南。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left" align="left"&gt;&lt;/p&gt;  &lt;p style="text-align:left" align="left"&gt;&lt;strong&gt;&lt;span style="font-size:12.0pt;font-family:宋体;"&gt;公共方法&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span style="background:#D9D9D9;"&gt;public void &lt;strong&gt;cancel&lt;/strong&gt; (int id)&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="font-family:宋体;"&gt;移除一个已经显示的通知，如果该通知是短暂的，会隐藏视图；如果通知是持久的，会从状态栏中移除。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-indent:21.0pt"&gt;&lt;span style="font-family:宋体;"&gt;参数&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; id&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="font-family:宋体;"&gt;通知的&lt;/span&gt;id&lt;/p&gt;  &lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span style="background:#D9D9D9;"&gt;public void &lt;strong&gt;cancel&lt;/strong&gt; (String tag&lt;/span&gt;&lt;span style=" font-family:宋体; background:#D9D9D9;"&gt;，&lt;/span&gt;&lt;span style=" background:#D9D9D9;"&gt;int id)&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span style="font-family:宋体;"&gt;移除一个已经显示的通知，如果该通知是短暂的，会隐藏视图；如果通知是持久的，会从状态栏中移除。&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-indent:21.0pt"&gt;&lt;span style="font-family:宋体;"&gt;参数&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tag&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;通知的标签&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; id&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="font-family:宋体;"&gt;通知的&lt;/span&gt;id&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span style="background:#D9D9D9;"&gt;public void &lt;strong&gt;cancelAll&lt;/strong&gt; ()&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="font-family:宋体;"&gt;移除所有的已经显示的通知，详细行为见&lt;/span&gt;&lt;a href="http://developer.android.com/reference/android/app/NotificationManager.html#cancel%28int%29"&gt;&lt;span style="color:#006699;background:white"&gt;cancel(int)&lt;/span&gt;&lt;/a&gt;&lt;code&gt;&lt;span style="font-size:12.0pt; background:white"&gt;。&lt;/span&gt;&lt;/code&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span style="background:#D9D9D9;"&gt;public void &lt;strong&gt;notify&lt;/strong&gt; (int id&lt;/span&gt;&lt;span style=" font-family:宋体; background:#D9D9D9;"&gt;，&lt;/span&gt;&lt;span style=" background:#D9D9D9;"&gt;Notification notification)&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="font-family:宋体;"&gt;提交一个通知在状态栏中显示。如果拥有相同&lt;/span&gt;id&lt;span style="font-family:宋体;"&gt;的通知已经被提交而且没有被移除，该方法会用新的信息来替换之前的通知。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-indent:21.0pt"&gt;&lt;span style="font-family:宋体;"&gt;参数&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt"&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; id&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style=" font-family:宋体;"&gt;应用中通知的唯一标识&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-indent:21.0pt"&gt;&lt;span&gt;&lt;span&gt;notification&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span style="font-family:宋体;"&gt;一个通知对象用来描述向用户展示什么信息，不能为空&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span style="background:#D9D9D9;"&gt;public void &lt;strong&gt;notify&lt;/strong&gt; (String tag&lt;/span&gt;&lt;span style=" font-family:宋体; background:#D9D9D9;"&gt;，&lt;/span&gt;&lt;span style=" background:#D9D9D9;"&gt;int id&lt;/span&gt;&lt;span style="font-family:宋体;background:#D9D9D9;"&gt;，&lt;/span&gt;&lt;span style="background:#D9D9D9;"&gt;Notification notification)&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-indent:21.0pt"&gt;&lt;span style="font-family:宋体;"&gt;提交一个通知在状态栏中显示。如果拥有相同标签和相同&lt;/span&gt;id&lt;span style="font-family:宋体;"&gt;的通知已经被提交而且没有被移除，该方法会用更新的信息来替换之前的通知。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-indent:21.0pt"&gt;&lt;span style="font-family:宋体;"&gt;参数&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-indent:21.0pt"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tag&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="font-family:宋体;"&gt;用来标识通知的字符串，可以为空。&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; id&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="font-family:宋体;"&gt;应用中通知的唯一标识。&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; notification&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="font-family:宋体;"&gt;一个通知对象用来描述向用户展示什么信息，不能为空。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left" align="left"&gt;&lt;strong&gt;&amp;nbsp;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="text-align:left" align="left"&gt;&lt;strong&gt;&lt;span style="font-size:12.0pt;font-family:宋体;"&gt;补充&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt" align="left"&gt;&lt;span style="font-family:宋体;"&gt;文章精选&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left" align="left"&gt;&lt;a href="http://blog.csdn.net/wdaming1986/article/details/7017742"&gt;Android&lt;span style="font-family:宋体;"&gt;&lt;span&gt;中&lt;/span&gt;Notification&lt;span style="font-family:宋体;"&gt;详解【&lt;/span&gt;android&lt;span style="font-family:宋体;"&gt;进化三十五】&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p style="text-align:left" align="left"&gt;&lt;/p&gt;  &lt;/div&gt;&lt;img src="http://www.cnblogs.com/over140/aggbug/2316809.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/over140/archive/2012/01/09/2316809.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/over140/archive/2012/01/06/2314114.html</id><title type="text">Android开发指南(42) —— Adding Custom Suggestions</title><summary type="text">本章内容为 Android开发者指南的 Framework Topics/Search/Adding Custom Suggestions章节，译为"添加自定义建议项"，版本为Android 4.0 r1，翻译来自："呆呆大虾"，欢迎访问他的微博："http://weibo.com/popapa"，再次感谢"呆呆大虾" ！期待你一起参与翻译Android的相关资料，联系我over140@gmail.com。</summary><published>2012-01-06T03:02:00Z</published><updated>2012-01-06T03:02:00Z</updated><author><name>农民伯伯</name><uri>http://www.cnblogs.com/over140/</uri></author><link rel="alternate" href="http://www.cnblogs.com/over140/archive/2012/01/06/2314114.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/over140/archive/2012/01/06/2314114.html"/><content type="html">&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;p&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;前言&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;本章内容为  Android开发者指南的  Framework Topics/Search/Adding Custom Suggestions章节，译为"添加自定义建议项"，版本为Android 4.0 r1，翻译来自："呆呆大虾"，欢迎访问他的微博："&lt;a title="http://weibo.com/popapa" href="http://weibo.com/popapa"&gt;http://weibo.com/popapa&lt;/a&gt;"，再次感谢"呆呆大虾" ！期待你一起参与翻译Android的相关资料，联系我over140@gmail.com。 &lt;/p&gt; &lt;p&gt;&lt;/p&gt; &lt;div&gt; &lt;p&gt;&lt;strong style="color: red"&gt;声明&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;欢迎转载，但请保留文章原始出处:)&amp;nbsp;&lt;/p&gt; &lt;p&gt;博客园：&lt;a title="http://www.cnblogs.com" href="http://www.cnblogs.com/"&gt;http://www.cnblogs.com/&lt;/a&gt;&lt;/p&gt;　　　　Android中文翻译组：&lt;a title="http://androidbox.sinaapp.com/" href="http://androidbox.sinaapp.com/"&gt;http://androidbox.sinaapp.com/&lt;/a&gt;&lt;/div&gt;  &lt;p&gt;&lt;/p&gt;&lt;/div&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;strong&gt;&amp;nbsp;&lt;/strong&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;  &lt;p style="text-align:center" align="center"&gt;&lt;strong&gt;&lt;span style="font-size:16.0pt;font-family:宋体;"&gt;添加自定义建议项&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="text-align:center" align="center"&gt;&lt;span style="font-family:宋体;"&gt;译者署名：&lt;/span&gt; &lt;span style="font-family:宋体;"&gt;呆呆大虾&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:center" align="center"&gt;&lt;span style="font-family:宋体;"&gt;译者微博：&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt; &lt;a href="http://weibo.com/popapa"&gt;http://weibo.com/popapa&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:center" align="center"&gt;&lt;span style="font-family:宋体;"&gt;版本：&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;Android 4.0 r1&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;span style="font-family:宋体;"&gt;原文&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;&lt;a href="http://developer.android.com/guide/topics/search/adding-custom-suggestions.html"&gt;http://developer.android.com/guide/topics/search/adding-custom-suggestions.html&lt;/a&gt; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p style="text-align:left;layout-grid-mode:char;" align="left"&gt;&lt;strong&gt;&lt;span style="font-family:宋体; color:#7BB026;"&gt;在本文中&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;background:white" align="left"&gt;&lt;u&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#CC6600;"&gt;&lt;a href="#basic"&gt;&lt;span style="font-family: 宋体;color:#CC6600"&gt;简&lt;span&gt;介&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;background:white" align="left"&gt;&lt;u&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#CC6600;"&gt;&lt;a href="#Configuration"&gt;&lt;span style="font-family:宋体;color:#CC6600"&gt;修改搜索配置文件&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;background:white" align="left"&gt;&lt;u&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#CC6600;"&gt;&lt;a href="#ContentProvider"&gt;&lt;span style="font-family:宋体;color:#CC6600"&gt;创建&lt;/span&gt;&lt;span style="color:#CC6600"&gt;Content Provider&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;background:white" align="left"&gt;&lt;u&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#CC6600;"&gt;&lt;a href="#handle_query"&gt;&lt;span style="font-family:宋体;color:#CC6600"&gt;处理建议项请求&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;background:white" align="left"&gt;&lt;u&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#CC6600;"&gt;&lt;a href="#Suggestion_table"&gt;&lt;span style="font-family:宋体;color:#CC6600"&gt;建立建议&lt;span&gt;项&lt;span&gt;数据表&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;background:white" align="left"&gt;&lt;u&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#CC6600;"&gt;&lt;a href="#Declaring_Intent"&gt;&lt;span style="font-family:宋体;color:#CC6600"&gt;声明建议&lt;span&gt;项&lt;span&gt;所需的&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#CC6600"&gt;Intent&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;background:white" align="left"&gt;&lt;u&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#CC6600;"&gt;&lt;a href="#Declaring_Action"&gt;&lt;span style="font-family:宋体;color:#CC6600"&gt;声明&lt;/span&gt;&lt;span style="color:#CC6600"&gt;intent&lt;/span&gt;&lt;span style="font-family:宋体;color:#CC6600"&gt;的&lt;/span&gt;&lt;span style="color:#CC6600"&gt;action&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;background:white" align="left"&gt;&lt;u&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#CC6600;"&gt;&lt;a href="#Declaring_Data"&gt;&lt;span style="font-family:宋体;color:#CC6600"&gt;声明&lt;/span&gt;&lt;span style="color:#CC6600"&gt;intent&lt;/span&gt;&lt;span style="font-family:宋体;color:#CC6600"&gt;的&lt;/span&gt;&lt;span style="color:#CC6600"&gt;data&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;background:white" align="left"&gt;&lt;u&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#CC6600;"&gt;&lt;a href="#Handling_Intent"&gt;&lt;span style="font-family:宋体;color:#CC6600"&gt;处理&lt;/span&gt;&lt;span style="color:#CC6600"&gt;Intent&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;background:white" align="left"&gt;&lt;u&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#CC6600;"&gt;&lt;a href="#Rewriting_query"&gt;&lt;span style="font-family:宋体;color:#CC6600"&gt;改写查询请求文本&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;background:white" align="left"&gt;&lt;u&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#CC6600;"&gt;&lt;a href="#expose_suggestion"&gt;&lt;span style="font-family:宋体;color:#CC6600"&gt;向快速搜索框&lt;/span&gt;&lt;span style="font-family:宋体;color:#CC6600"&gt;提供&lt;/span&gt;&lt;span style="font-family:宋体;color:#CC6600"&gt;搜索&lt;span&gt;建&lt;span&gt;议&lt;span&gt;项&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;strong&gt;&lt;span style="font-family: 宋体;color:#7BB026;"&gt;关键类&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;background:white" align="left"&gt;&lt;u&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#CC6600;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html"&gt;&lt;span style="color:#CC6600"&gt;SearchManager&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;background:white" align="left"&gt;&lt;u&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#CC6600;"&gt;&lt;a href="http://developer.android.com/reference/android/content/SearchRecentSuggestionsProvider.html"&gt;&lt;span style="color:#CC6600"&gt;SearchRecentSuggestionsProvider&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;background:white" align="left"&gt;&lt;u&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#CC6600;"&gt;&lt;a href="http://developer.android.com/reference/android/content/ContentProvider.html"&gt;&lt;span style="color:#CC6600"&gt;ContentProvider&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;strong&gt;&lt;span style="font-family: 宋体;color:#7BB026;"&gt;相关示例&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt;background:white" align="left"&gt;&lt;u&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#CC6600;"&gt;&lt;a href="http://developer.android.com/resources/samples/SearchableDictionary/index.html"&gt;&lt;span style="font-family:宋体;color:#CC6600"&gt;支持检索的字典&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p style="text-align:left;layout-grid-mode:char;" align="left"&gt;&lt;strong&gt;&lt;span style="font-family:宋体; color:#7BB026;"&gt;参阅&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;background:white" align="left"&gt;&lt;u&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#CC6600;"&gt;&lt;a href="http://developer.android.com/guide/topics/search/searchable-config.html"&gt;&lt;span style="font-family:宋体;color:#CC6600"&gt;搜索配置文件&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;background:white" align="left"&gt;&lt;u&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#CC6600;"&gt;&lt;a href="http://developer.android.com/guide/topics/providers/content-providers.html"&gt;&lt;span style="color:#CC6600"&gt;Content Providers&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p style="text-align:left; background:white" align="left"&gt;&lt;u&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#CC6600;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;利用&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;Android&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;的搜索对话框或搜索&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;widget&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;，可以提供自定义搜索建议项，它的数据来源于应用程序自身。比如，假设应用程序是一个字典应用，可以把字典中最匹配已录入文本的单词作为建议项。由于能有效预测用户所查文本并能让用户直接获得字典中的释义，这种建议项是最有价值的。图&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;1&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;展示了使用自定义建议项的搜索对话框示例：&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:center; background:white" align="center"&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;&lt;img alt="" src="http://images.cnblogs.com/cnblogs_com/over140/2012/1/2012-1-6_1.jpg" border="0" height="417" width="250" /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:center; layout-grid-mode:char;background:white;" align="center"&gt;&lt;strong&gt;&lt;span style="font-family:宋体;"&gt;图&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;1.&lt;/span&gt;&lt;/strong&gt; &lt;span style=" font-family:宋体;"&gt;使用自定义对话框的搜索对话框截屏&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;一旦提供了自定义建议项，就可以同时让它应用于系统级的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;快速搜索框&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;，从应用程序之外访问搜索内容。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;在添加自定义建议项之前，需要先在应用程序中实现一个&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;Android&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;搜索对话框或搜索&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;widget&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;。如果还没有的话，请参阅&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#333333;"&gt;&lt;a href="http://developer.android.com/guide/topics/search/search-dialog.html"&gt;&lt;span style="font-family:宋体;color:#006699"&gt;创建搜索界面&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style=" font-family:宋体;color:#333333;"&gt;。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;/p&gt;  &lt;div style="border:none;border-top:solid #CCCCCC 1.5pt; padding:6.0pt 0cm 0cm 0cm"&gt;  &lt;p style="text-align:left;border:none; padding:0cm;" align="left"&gt;&lt;a name="basic"&gt;&lt;strong&gt;&lt;span style="font-size:14.0pt;font-family:宋体; color:#111111;"&gt;简介&lt;/span&gt;&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;  &lt;/div&gt;    &lt;p&gt;&lt;a name="_Hlk313340812"&gt;&lt;span style="font-family:宋体;color:windowtext"&gt;如果用户选中了某个自定义建议项，&lt;/span&gt;&lt;/a&gt;&lt;span style="color:windowtext"&gt;Android&lt;/span&gt;&lt;span style="font-family:宋体;color:windowtext"&gt;系统将向搜索&lt;/span&gt;&lt;span style="color:windowtext"&gt;activity&lt;/span&gt;&lt;span style="font-family:宋体;color:windowtext"&gt;发送一个&lt;/span&gt;&lt;a href="http://developer.android.com/reference/android/content/Intent.html"&gt;&lt;span style="color:#0070C0"&gt;Intent&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:宋体;color:windowtext"&gt;。标准的搜索请求将会发送一个附带&lt;/span&gt;&lt;a href="http://developer.android.com/reference/android/content/Intent.html#ACTION_SEARCH"&gt;&lt;span style="color:#0070C0"&gt;ACTION_SEARCH&lt;/span&gt;&lt;/a&gt;&lt;span style="color:windowtext"&gt; action&lt;/span&gt;&lt;span style="font-family:宋体;color:windowtext"&gt;的&lt;/span&gt;&lt;span style="color:windowtext"&gt;intent&lt;/span&gt;&lt;span&gt;&lt;span style="font-family:宋体; color:windowtext"&gt;，不过仍可让自定义建议项使用&lt;/span&gt;&lt;/span&gt;&lt;a href="http://developer.android.com/reference/android/content/Intent.html#ACTION_VIEW"&gt;&lt;span style="color:#0070C0"&gt;ACTION_VIEW&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:宋体;color:windowtext"&gt;（或者任何其它&lt;/span&gt;&lt;span style="color:windowtext"&gt;action&lt;/span&gt;&lt;span style="font-family:宋体;color:windowtext"&gt;），并放入相应的选中建议项数据。接着上面的字典应用示例，用户选中一个建议项时，应用程序可以立即显示单词的释义，而不是去字典检索匹配项。&lt;/span&gt;&lt;/p&gt;    &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;为了提供自定义建议项功能，请按以下步骤操作：&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.5pt;text-align:left;text-indent:0cm;" align="left"&gt;&lt;span style="font-size:10.0pt;font-family:Symbol;"&gt;&lt;span&gt;&amp;#183;&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;实现一个基本的搜索&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;activity&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;，如&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#0070C0;"&gt;&lt;a href="http://developer.android.com/guide/topics/search/search-dialog.html"&gt;&lt;span style="font-family:宋体;color:#0070C0"&gt;创建搜索界面&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;所述。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.5pt;text-align:left;text-indent:0cm;" align="left"&gt;&lt;span style="font-size:10.0pt;font-family:Symbol;"&gt;&lt;span&gt;&amp;#183;&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;修改搜索配置文件中有关&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;的信息，用于提供自定义建议项的数据。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.5pt;text-align:left;text-indent:0cm;" align="left"&gt;&lt;span style="font-size:10.0pt;font-family:Symbol;"&gt;&lt;span&gt;&amp;#183;&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;建立存放建议项的数据表（比如在&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#0070C0;"&gt;&lt;a href="http://developer.android.com/reference/android/database/sqlite/SQLiteDatabase.html"&gt;&lt;span style="color:#0070C0"&gt;SQLiteDatabase&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;库中），根据所需数据列定义表结构。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.5pt;text-align:left;text-indent:0cm;" align="left"&gt;&lt;span style="font-size:10.0pt;font-family:Symbol;"&gt;&lt;span&gt;&amp;#183;&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;创建访问建议项数据表的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#0070C0;"&gt;&lt;a href="http://developer.android.com/guide/topics/providers/content-providers.html"&gt;&lt;span style="color:#0070C0"&gt;Content Provider&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;，并在&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;manifest&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;文件中声明&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;provider&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.5pt;text-align:left;text-indent:0cm;" align="left"&gt;&lt;span style="font-size:10.0pt;font-family:Symbol;"&gt;&lt;span&gt;&amp;#183;&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;声明&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#0070C0;"&gt;&lt;a href="http://developer.android.com/reference/android/content/Intent.html"&gt;&lt;span style="color:#0070C0"&gt;Intent&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;的类型，用户选中某个建议项时可用于发送数据（包括自定义&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;和自定义数据）。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;当搜索对话框显示出来时，&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;Android&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;系统同时也会显示搜索建议项。需要提供的只是系统能从中读取建议项的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;。如果对创建&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;还不很熟悉，请先阅读&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#0070C0;"&gt;&lt;a href="http://developer.android.com/guide/topics/providers/content-providers.html"&gt;&lt;span style="color:#0070C0"&gt;Content Providers&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;开发者指南再往下继续吧。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;一旦系统识别出&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;activity&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;支持搜索功能且已提供搜索建议项，用户键入搜索请求时会执行以下步骤：&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;1.&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;系统读取搜索请求文本（录入了多少就读取多少），并在存放建议项的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family: 宋体;"&gt;中进行检索。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;2.&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;返回一个&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#0070C0;"&gt;&lt;a href="http://developer.android.com/reference/android/database/Cursor.html"&gt;&lt;span style="color:#0070C0"&gt;Cursor&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;，它指向匹配搜索文本的全部建议项。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;3.&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;系统显示该&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;Cursor&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;提供的建议项列表。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;显示完毕，将发生以下事情：&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;" align="left"&gt;&lt;span style="font-size:10.0pt;font-family:Symbol;"&gt;&lt;span&gt;&amp;#183;&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;如果用户键入其它字符，或者以其它任何方式修改了请求文本，则上述步骤会重复执行，建议项列表将同步更新。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;" align="left"&gt;&lt;span style="font-size:10.0pt;font-family:Symbol;"&gt;&lt;span&gt;&amp;#183;&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;如果用户执行了搜索，建议项将被忽略，搜索文本将用正常的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#0070C0;"&gt;&lt;a href="http://developer.android.com/reference/android/content/Intent.html#ACTION_SEARCH"&gt;&lt;span style="color:#0070C0"&gt;ACTION_SEARCH&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt; intent&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;发送给搜索&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;activity&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;" align="left"&gt;&lt;span style="font-size:10.0pt;font-family:Symbol;"&gt;&lt;span&gt;&amp;#183;&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;如果用户选中了某个建议项，带有自定义&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;和自定义数据的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;将会发送给搜索&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;activity&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;，应用程序可以打开建议项内容。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;/p&gt;  &lt;div style="border:none;border-top:solid #CCCCCC 1.5pt; padding:6.0pt 0cm 0cm 0cm"&gt;  &lt;p style="text-align:left;border:none; padding:0cm;" align="left"&gt;&lt;a name="Configuration"&gt;&lt;strong&gt;&lt;span style="font-size:14.0pt;font-family:宋体; color:#111111;"&gt;修改搜索配置文件&lt;/span&gt;&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;  &lt;/div&gt;    &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;要加入对自定义建议项的支持，请在搜索配置文件的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&amp;lt;searchable&amp;gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;元素中添加&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;android:searchSuggestAuthority&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;属性。例如：&lt;/span&gt;&lt;/p&gt;  &lt;div style="border:solid #CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FAFAFA; margin-left:21.0pt;margin-right:0cm"&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;&amp;lt;?&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt;xml version&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#008800;"&gt;"1.0"&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt; encoding&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#008800;"&gt;"utf-8"&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;?&amp;gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#000088;"&gt;&amp;lt;searchable&lt;/span&gt; &lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;xmlns:android&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"http://schemas.android.com/apk/res/android"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:label&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#008800;"&gt;"@string/app_label"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:hint&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#008800;"&gt;"@string/search_hint"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;strong&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSuggestAuthority&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;=&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"com.example.MyCustomSuggestionProvider"&lt;/span&gt;&lt;/strong&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#000088;"&gt;&amp;gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#000088;"&gt;&amp;lt;/searchable&amp;gt;&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;根据建议项相关的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;类型，以及如何组织提交给&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;的请求文本，可能还需要用到其它一些属性。其它可选的属性将在后续章节中讨论。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;/p&gt;  &lt;div style="border:none;border-top:solid #CCCCCC 1.5pt; padding:6.0pt 0cm 0cm 0cm"&gt;  &lt;p style="text-align:left;border:none; padding:0cm;" align="left"&gt;&lt;a name="ContentProvider"&gt;&lt;strong&gt;&lt;span style="font-size:14.0pt;font-family:宋体; color:#111111;"&gt;创建&lt;/span&gt;&lt;/strong&gt;&lt;/a&gt;&lt;span&gt;&lt;strong&gt;&lt;span style="font-size:14.0pt;font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#111111;"&gt;Content Provider&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;    &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="font-family:宋体;"&gt;要为自定义建议项创建&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;，需要具备&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;的相关知识，这在&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#0070C0;"&gt;&lt;a href="http://developer.android.com/guide/topics/providers/content-providers.html"&gt;&lt;span style="color:#0070C0"&gt;Content Provider&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;开发者指南中描述。自定义建议项所需的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;绝大部分都与其它&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;相同。不过，&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#0070C0;"&gt;&lt;a href="http://developer.android.com/reference/android/database/Cursor.html"&gt;&lt;span style="color:#0070C0"&gt;Cursor&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;中对应每个建议项的数据行都必须包含系统可解析的数据列，用于组织建议项数据。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;用户开始在搜索对话框或搜索&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;widget&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;里输入文本时，每键入一个字符，系统都将调用一次&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#0070C0;"&gt;&lt;a href="http://developer.android.com/reference/android/content/ContentProvider.html#query%28android.net.Uri,%20java.lang.String[],%20java.lang.String,%20java.lang.String[],%20java.lang.String%29"&gt;&lt;span style="color:#0070C0"&gt;query()&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;，并在&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;中检索建议项。在&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#0070C0;"&gt;&lt;a href="http://developer.android.com/reference/android/content/ContentProvider.html#query%28android.net.Uri,%20java.lang.String[],%20java.lang.String,%20java.lang.String[],%20java.lang.String%29"&gt;&lt;span style="color:#0070C0"&gt;query()&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;中，必须实现对&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;建议项数据的检索，并返回一个指向最佳建议项数据行的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#0070C0;"&gt;&lt;a href="http://developer.android.com/reference/android/database/Cursor.html"&gt;&lt;span style="color:#0070C0"&gt;Cursor&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;关于为自定义建议项创建&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;的详情，将在以下章节讨论：&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#0070C0;"&gt;&lt;a href="#handle_query"&gt;&lt;span style="font-family:宋体;color:#0070C0"&gt;处理建议项请求&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;系统如何向&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;发送请求及如何处理。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#0070C0;"&gt;&lt;a href="http://developer.android.com/guide/topics/search/adding-custom-suggestions.html#SuggestionTable#SuggestionTable"&gt;&lt;span style="font-family:宋体;color:#0070C0"&gt;建立建议项数据表&lt;/span&gt;&lt;span style="color:#0070C0"&gt; &lt;/span&gt;&lt;/a&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;如何定义数据列，系统用于在每次搜索时返回&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#0070C0;"&gt;&lt;a href="http://developer.android.com/reference/android/database/Cursor.html"&gt;&lt;span style="color:#0070C0"&gt;Cursor&lt;/span&gt;&lt;/a&gt;&lt;/span&gt; &lt;span style="font-family:宋体;"&gt;。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;a name="handle_query"&gt;&lt;strong&gt;&lt;span style="font-size:12.0pt; font-family:宋体;"&gt;处理建议项请求&lt;/span&gt;&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;    &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;当系统向&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;发送建议项检索请求时，将会调用&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#0070C0;"&gt;&lt;a href="http://developer.android.com/reference/android/content/ContentProvider.html#query%28android.net.Uri,%20java.lang.String[],%20java.lang.String,%20java.lang.String[],%20java.lang.String%29"&gt;&lt;span style="color:#0070C0"&gt;query()&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;方法。必须在该方法中实现搜索建议项数据并返回指向最匹配建议项的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#0070C0;"&gt;&lt;a href="http://developer.android.com/reference/android/database/Cursor.html"&gt;&lt;span style="color:#0070C0"&gt;Cursor&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;以下是系统传给&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#0070C0;"&gt;&lt;a href="http://developer.android.com/reference/android/content/ContentProvider.html#query%28android.net.Uri,%20java.lang.String[],%20java.lang.String,%20java.lang.String[],%20java.lang.String%29"&gt;&lt;span style="color:#0070C0"&gt;query()&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;方法的所有参数（按照调用顺序排列）：&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;uri&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;通常是&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content &lt;span style="color:#007000"&gt;&lt;a href="http://developer.android.com/reference/android/net/Uri.html"&gt;&lt;span style="color:#006699"&gt;Uri&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;，格式如下：&lt;/span&gt;&lt;/p&gt;  &lt;div style="border:solid #CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FAFAFA; margin-left:42.0pt;margin-right:0cm"&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;content://&lt;em&gt;your.authority&lt;/em&gt;/&lt;em&gt;optional.suggest.path&lt;/em&gt;/&lt;em&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_URI_PATH_QUERY"&gt;&lt;span style="color:#006699"&gt;SUGGEST_URI_PATH_QUERY&lt;/span&gt;&lt;/a&gt;&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;系统的默认行为是传递&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;URI&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;并后跟搜索请求文本。例如：&lt;/span&gt;&lt;/p&gt;  &lt;div style="border:solid #CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FAFAFA; margin-left:42.0pt;margin-right:0cm"&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;content://&lt;em&gt;your.authority&lt;/em&gt;/&lt;em&gt;optional.suggest.path&lt;/em&gt;/&lt;em&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_URI_PATH_QUERY"&gt;&lt;span style="color:#006699"&gt;SUGGEST_URI_PATH_QUERY&lt;/span&gt;&lt;/a&gt;&lt;/em&gt;/puppies&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;末尾的请求文本是用&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;URI &lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;编码规则编码过的，因此可能要在执行搜索前进行解码。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;仅当搜索配置文件中用&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;android:searchSuggestPath&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;属性设置了路径时，&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;URI&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;中才要包含&lt;/span&gt;&lt;em&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;optional.suggest.path&lt;/span&gt;&lt;/em&gt;&lt;span style="font-family:宋体;"&gt;部分。只有多个搜索&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;activity&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;需共用同一个&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;时，才需要用到该配置。在这种情况下，需要解析建议项请求的来源。&lt;/span&gt;&lt;/p&gt;  &lt;div style="border:none;border-left:solid #99AACC 3.0pt; padding:0cm 0cm 0cm 6.0pt;margin-left:42.0pt;margin-right:0cm"&gt;  &lt;p style="margin-left:0cm; text-align:left;border:none;padding:0cm;" align="left"&gt;&lt;strong&gt;&lt;span style="font-family:宋体;"&gt;注意：&lt;/span&gt;&lt;/strong&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_URI_PATH_QUERY"&gt;&lt;span style="color:#006699"&gt;SUGGEST_URI_PATH_QUERY&lt;/span&gt;&lt;/a&gt;&lt;/span&gt; &lt;span style=" font-family:宋体;"&gt;并不属于&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;URI&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;的一部分，而应是用于指向此路径的常量。&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;projection&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;总为&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;null&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;selection&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;该值由搜索配置文件中的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;android:searchSuggestSelection&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;属性提供，如果未声明&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;android:searchSuggestSelection&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;属性则为&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;null&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;。更多使用信息请参见下文&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;&lt;a href="#Get_selection"&gt;&lt;span style="font-family:宋体;color:#006699"&gt;读取请求&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;selectionArgs&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;如果已在搜索配置文件中声明了&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;android:searchSuggestSelection&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;属性，那么数组的第一个（也只有一个）元素包含了搜索请求。如果未声明&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;android:searchSuggestSelection&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;，&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;则本参数将为&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;null&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;。更多使用信息请参见下文&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#333333;"&gt;&lt;a href="#Get_selection"&gt;&lt;span style="font-family:宋体;color:#006699"&gt;读取请求&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;span style=" font-family:宋体;color:#333333;"&gt;。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;sortOrder&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;总为&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;null&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;系统可以用两种方式发送搜索请求文本。默认的方式是作为&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content URI&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;路径的末尾部分（&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;last segment&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;）在&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;uri&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;参数中传递。不过，假如在搜索配置文件的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;android:searchSuggestSelection&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;属性中包含了选项值，那么请求文本将作为字符串数组&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;selectionArgs&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;的第一个元素传递。这两种方式将在下文中一起讨论。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;a name="Get_query"&gt;&lt;span&gt;&lt;strong&gt;&lt;span style=" font-family:宋体;color:#3A3A3A;"&gt;读取&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/a&gt;&lt;span&gt;&lt;strong&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#3A3A3A;"&gt;Uri&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;strong&gt;&lt;span style="font-family:宋体; color:#3A3A3A;"&gt;中的搜索请求&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;默认情况下，请求文本是附加在&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;uri&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;参数（&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/net/Uri.html"&gt;&lt;span style="color:#006699"&gt;Uri&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;对象）的末尾的。这时只要简单地用&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/net/Uri.html#getLastPathSegment%28%29"&gt;&lt;span style="color:#006699"&gt;getLastPathSegment()&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;即可读取请求文本了。例如：&lt;/span&gt;&lt;/p&gt;  &lt;div style="border:solid #CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FAFAFA; margin-left:21.0pt;margin-right:0cm"&gt;  &lt;p style="margin-left:0cm; text-align:left; background:#FAFAFA;border:none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#660066;"&gt;String&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt; query &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt; uri&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;.&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt;getLastPathSegment&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;().&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt;toLowerCase&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;();&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;这将返回&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/net/Uri.html"&gt;&lt;span style="color:#006699"&gt;Uri&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;的末尾部分（&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;last segment&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;），也就是用户录入的请求文本。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;a name="Get_selection"&gt;&lt;strong&gt;&lt;span style="font-family:宋体;"&gt;读取&lt;/span&gt;&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;selection&lt;/span&gt;&lt;/strong&gt;&lt;span&gt;&lt;strong&gt;&lt;span style=" font-family:宋体;"&gt;参数中的搜索请求&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;与&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;URI&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;不同，还可以采用更智能的方式，&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/content/ContentProvider.html#query%28android.net.Uri,%20java.lang.String[],%20java.lang.String,%20java.lang.String[],%20java.lang.String%29"&gt;&lt;span style="color:#006699"&gt;query()&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;方法能够接收执行搜索所需的任何信息，&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;selection&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;和&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;selectionArgs&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;属性也能够传递合适的值。这种情况下，只要把&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;SQLite&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;查询语句作为&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;android:searchSuggestSelection&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;属性加入到搜索配置文件中去即可。在查询语句中，问号用作占位符，代表实际的查询请求。系统将用该查询语句作为&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;selection&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;参数，搜索请求作为&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;selectionArgs&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;数组的第一个元素，对&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/content/ContentProvider.html#query%28android.net.Uri,%20java.lang.String[],%20java.lang.String,%20java.lang.String[],%20java.lang.String%29"&gt;&lt;span style="color:#006699"&gt;query()&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;进行调用。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;以下是如何定义&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;android:searchSuggestSelection&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;属性来创建全文搜索语句的示例：&lt;/span&gt;&lt;/p&gt;  &lt;div style="border:solid #CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FAFAFA; margin-left:21.0pt;margin-right:0cm"&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;&amp;lt;?&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt;xml version&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#008800;"&gt;"1.0"&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt; encoding&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#008800;"&gt;"utf-8"&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;?&amp;gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#000088;"&gt;&amp;lt;searchable&lt;/span&gt; &lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;xmlns:android&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"http://schemas.android.com/apk/res/android"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:label&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#008800;"&gt;"@string/app_label"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:hint&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#008800;"&gt;"@string/search_hint"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSuggestAuthority&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"com.example.MyCustomSuggestionProvider"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSuggestIntentAction&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"android.intent.action.VIEW"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;strong&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSuggestSelection&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;=&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"word MATCH ?"&lt;/span&gt;&lt;/strong&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#000088;"&gt;&amp;gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#000088;"&gt;&amp;lt;/searchable&amp;gt;&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;通过以上配置，&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/content/ContentProvider.html#query%28android.net.Uri,%20java.lang.String[],%20java.lang.String,%20java.lang.String[],%20java.lang.String%29"&gt;&lt;span style="color:#006699"&gt;query()&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;方法会把&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;selection&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;参数赋为&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;"word MATCH ?"&lt;/span&gt; &lt;span style="font-family:宋体;color:#333333;"&gt;，&lt;/span&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;selectionArgs&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;参&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;数赋为搜索请求。当这些信息作为参数传给&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;SQLite &lt;span style="color:#007000"&gt;&lt;a href="http://developer.android.com/reference/android/database/sqlite/SQLiteDatabase.html#query%28java.lang.String,%20java.lang.String[],%20java.lang.String,%20java.lang.String[],%20java.lang.String,%20java.lang.String,%20java.lang.String%29"&gt;&lt;span style="color:#006699"&gt;query()&lt;/span&gt;&lt;/a&gt;&lt;/span&gt; &lt;/span&gt;&lt;span style="font-family:宋体;"&gt;方法时，会被组合在一起（问号由搜索请求文本代替）。如果选择以这种方式接收建议项请求并需要在请求文本中加入通配符，可以在&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;selectionArgs&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;参数的后面（或前面）加入即可，因为该值将用引号包裹并整体插入到问号所在位置。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;以上例子中新出现的属性是&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;android:searchSuggestIntentAction&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;，用于定义用户每次选中建议项时所发送&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;。这将在后续章节&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#333333;"&gt;&lt;a href="http://developer.android.com/guide/topics/search/adding-custom-suggestions.html#IntentForSuggestions#IntentForSuggestions"&gt;&lt;span style="font-family:宋体;color:#006699"&gt;为建议项&lt;span&gt;声明&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#006699"&gt;Intent&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;讨论。&lt;/span&gt;&lt;/p&gt;  &lt;div style="border:none;border-left:solid #99AACC 3.0pt; padding:0cm 0cm 0cm 6.0pt;margin-left:21.0pt;margin-right:0cm"&gt;  &lt;p style="margin-left:0cm; text-align:left;border:none;padding:0cm;" align="left"&gt;&lt;strong&gt;&lt;span style="font-family:宋体;"&gt;提示：&lt;/span&gt;&lt;/strong&gt;&lt;span style=" font-family:宋体;"&gt;如果不需要在&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;android:searchSuggestSelection&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;属性中定义查询语句，但还要在&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;selectionArgs&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;参数中接收请求文本，则只要简单地把&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;android:searchSuggestSelection&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;属性赋成非空值即可。这将导致请求文本传递给&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;selectionArgs&lt;/span&gt;&lt;span style=" font-family:宋体;color:#333333;"&gt;，&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;并且&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;selection&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;参数可被忽略。这样就可以不用定义实际的底层查询语句，&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family: 宋体;"&gt;也不必再对其进行处理。&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;a name="Suggestion_table"&gt;&lt;strong&gt;&lt;span style="font-size:14.0pt; font-family:宋体;"&gt;建立建议项数据表&lt;/span&gt;&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;  &lt;div style="border:solid windowtext 1.0pt;padding:1.0pt 4.0pt 1.0pt 4.0pt; background:#FFFFEE"&gt;  &lt;p style="text-align:left;background:#FFFFEE;border:none; padding:0cm;" align="left"&gt;&lt;a name="Create_Cursor"&gt;&lt;strong&gt;&lt;span style="font-size:12.0pt;font-family:宋体; color:#111111;"&gt;创建脱离数据库表的&lt;/span&gt;&lt;/strong&gt;&lt;/a&gt;&lt;span&gt;&lt;strong&gt;&lt;span style="font-size:12.0pt; font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#111111;"&gt;Cursor&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="text-align:left; background:#FFFFEE;border:none;padding: 0cm;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;如果搜索建议项不是按照系统要求的数据列存储在数据库表中的（比如&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;SQLite&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;表），那可以在每次发起请求时检索匹配的建议项数据并把它们格式化后保存到必要的表中。要实现这一目标，用系统要求的列名创建一个&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#0070C0;"&gt;&lt;a href="http://developer.android.com/reference/android/database/MatrixCursor.html"&gt;&lt;span style="color:#0070C0"&gt;MatrixCursor&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;，并用&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#0070C0;"&gt;&lt;a href="http://developer.android.com/reference/android/database/MatrixCursor.html#addRow%28java.lang.Object[]%29"&gt;&lt;span style="color:#0070C0"&gt;addRow(Object[])&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;为每个建议项创建一行数据。&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;Content Provider&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#0070C0;"&gt;&lt;a href="http://developer.android.com/reference/android/content/ContentProvider.html#query%28android.net.Uri,%20java.lang.String[],%20java.lang.String,%20java.lang.String[],%20java.lang.String%29"&gt;&lt;span style="color:#0070C0"&gt;query()&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;方法将返回最终结果。&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;p style="text-align:left; background:#FFFFEE" align="left"&gt;&lt;span style="font-family:宋体;"&gt;用&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#0070C0;"&gt;&lt;a href="http://developer.android.com/reference/android/database/Cursor.html"&gt;&lt;span style="color:#0070C0"&gt;Cursor&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;向系统返回建议项时，每一行数据的列格式都是系统规定的。因此，无论是要把建议项数据存储在本地或&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;Web&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;服务器的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;SQLite&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;数据库中，还是要以本地或&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;web&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;的其它格式存储，都必须把建议项格式化为表的一行数据，并用&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#0070C0;"&gt;&lt;a href="http://developer.android.com/reference/android/database/Cursor.html"&gt;&lt;span style="color:#0070C0"&gt;Cursor&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;来表示。系统可以识别多个列，但有两列是必需的：&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#0070C0;"&gt;&lt;a href="http://developer.android.com/reference/android/provider/BaseColumns.html#_ID"&gt;&lt;span style="color:#0070C0"&gt;ID&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;整数类型的行&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;ID&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;，唯一标识建议项。在&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#0070C0;"&gt;&lt;a href="http://developer.android.com/reference/android/widget/ListView.html"&gt;&lt;span style="color:#0070C0"&gt;ListView&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;中显示建议项时，系统会用到该值。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#0070C0;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_TEXT_1"&gt;&lt;span style="color:#0070C0"&gt;SUGGEST_COLUMN_TEXT_1&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;代表建议项的字符串。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;以下各列是可选的（大部分都会在后续章节中讨论）：&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#0070C0;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_TEXT_2"&gt;&lt;span style="color:#0070C0"&gt;SUGGEST_COLUMN_TEXT_2&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;字符串。如果&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;Cursor&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;包含该列，那么所有的建议项都提供两行模式。本列中的字符串将会显示为第二行，它的字体较小并显示主建议项文本的下方。也可以为&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;null&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;或空串，表示没有第二行文本。&lt;/span&gt; &lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#0070C0;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_ICON_1"&gt;&lt;span style="color:#0070C0"&gt;SUGGEST_COLUMN_ICON_1&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;drawable&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;资源、&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;或文件&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;URI&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;串。如果&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;Cursor&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;包含该列，那么所有建议项都提供图标加文字模式，图标居左显示。该项可以为&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;null&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;或&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;0&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;，表示本行没有图标。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#0070C0;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_ICON_2"&gt;&lt;span style="color:#0070C0"&gt;SUGGEST_COLUMN_ICON_2&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;drawable&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;资源、&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;或文件&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;URI&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;串。如果&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;Cursor&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;包含该列，那么所有建议项都提供图标加文本模式，图标居右显示。该项可以为&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;null&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;或&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;0&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;，表示本行没有图标。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#0070C0;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_INTENT_ACTION"&gt;&lt;span style="color:#0070C0"&gt;SUGGEST_COLUMN_INTENT_ACTION&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent action&lt;/span&gt;&lt;span style="font-family: 宋体;"&gt;字符串。如果给定行中存在本列并且有值，那么此处定义的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;将用于格式化建议项的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;。如果未提供本值，则会采用搜索配置文件中的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;android:searchSuggestIntentAction&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;部分。如果所有建议项的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;都是相同的，则更有效的方式是用&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;android:searchSuggestIntentAction&lt;/span&gt; &lt;span style="font-family:宋体;"&gt;指定&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;并省略本列。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_INTENT_DATA"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_INTENT_DATA&lt;/span&gt;&lt;/a&gt;&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;数据&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;URI&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;字符串。如果给定行中存在本列并且有值，那么此值在格式化建议项时将作为&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;data&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;部分来使用。如果未提供本值，则会采用搜索配置文件中的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;android:searchSuggestIntentData&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;部分。如果前面两处都未提供值，则&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;的&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;data&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;部分将为&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;null&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;。如果所有建议项的数据都是相同的，或者能用固定部分&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;+ID&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;来描述的，那么更有效的的方式是用&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;android:searchSuggestIntentData&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;指定，并省略本列。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_INTENT_DATA_ID"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_INTENT_DATA_ID&lt;/span&gt;&lt;/a&gt;&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;URI&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;路径字符串。如果给定行中存在本列并且有值，那么&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;/&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;加上本值将会添加到&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;data&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;之后。仅当搜索配置文件中的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;android:searchSuggestIntentData&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;属性已经设置了适当的基础数据字符串时，本项才会用到。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_INTENT_EXTRA_DATA"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_INTENT_EXTRA_DATA&lt;/span&gt;&lt;/a&gt;&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;任何数据。如果给定行中存在本列并且有值，则表示格式化建议项&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;时需要用到的&lt;/span&gt;&lt;em&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;extra&lt;/span&gt;&lt;/em&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt; data&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;。如果未提供本值，则&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;extra data&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;部分为&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;null&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;。本列允许建议项附带额外的数据，包含于&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#EXTRA_DATA_KEY"&gt;&lt;span style="color:#006699"&gt;EXTRA_DATA_KEY&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;键内。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_QUERY"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_QUERY&lt;/span&gt;&lt;/a&gt;&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;如果给定行中存在本列并且有值，则为格式化建议项请求时需要用到的数据，包含于&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#QUERY"&gt;&lt;span style="color:#006699"&gt;QUERY&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;键内。当建议项的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;是&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/content/Intent.html#ACTION_SEARCH"&gt;&lt;span style="color:#006699"&gt;ACTION_SEARCH&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;时需要用到本值，否则则是可选列。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_SHORTCUT_ID"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_SHORTCUT_ID&lt;/span&gt;&lt;/a&gt;&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;仅当向&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;快速搜索框&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;提供建议项时才会用到。本列标明了搜索建议项是否要存储为快捷方式，以及是否需要验证有效性。快捷方式一般是在用户从&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;快速搜索框&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;中点击建议项时生成。如果本&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;ID&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;缺失的话，结果将会存储为快捷方式且不再会更新。如果设置为&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_NEVER_MAKE_SHORTCUT"&gt;&lt;span style="color:#006699"&gt;SUGGEST_NEVER_MAKE_SHORTCUT&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;，结果将不会存储为快捷方式。否则，快捷方式的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;ID&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;将用于检查并更新建议项，这时还会用到&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_URI_PATH_SHORTCUT"&gt;&lt;span style="color:#006699"&gt;SUGGEST_URI_PATH_SHORTCUT&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#333333;"&gt;.&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_SPINNER_WHILE_REFRESHING"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_SPINNER_WHILE_REFRESHING&lt;/span&gt;&lt;/a&gt;&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;仅用于向&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;快速搜索框&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;提供建议项。本列指明当&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;快速搜索框&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;内建议项的快捷方式更新后，是否用进度滚轮（&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;spinner&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;）替代&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_ICON_2"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_ICON_2&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;所设的图标。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;以上各列中的一部分将会在后续章节中继续讨论。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;/p&gt;  &lt;div style="border:none;border-top:solid #CCCCCC 1.5pt; padding:6.0pt 0cm 0cm 0cm"&gt;  &lt;p style="text-align:left;border:none; padding:0cm;" align="left"&gt;&lt;a name="Declaring_Intent"&gt;&lt;strong&gt;&lt;span style="font-size:14.0pt;font-family:宋体; color:#111111;"&gt;声明建议项所需的&lt;/span&gt;&lt;/strong&gt;&lt;/a&gt;&lt;span&gt;&lt;strong&gt;&lt;span style="font-size: 14.0pt;font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#111111;"&gt;Intent&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;    &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;当用户在搜索对话框或&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;widget&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;下方的列表内选中某个建议项时，系统会向搜索&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;activity&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;发送一个自定义的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/content/Intent.html"&gt;&lt;span style="color:#006699"&gt;Intent&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;。&lt;/span&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;必须定义好&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;和&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;data&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;部分。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;a name="Declaring_Action"&gt;&lt;strong&gt;&lt;span style="font-size:12.0pt; font-family:宋体;color:#3A3A3A;"&gt;声明&lt;/span&gt;&lt;/strong&gt;&lt;/a&gt;&lt;span&gt;&lt;strong&gt;&lt;span style="font-size:12.0pt;font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#3A3A3A;"&gt;intent&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;span&gt;&lt;strong&gt;&lt;span style="font-size:12.0pt; font-family:宋体;color:#3A3A3A;"&gt;的&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;span&gt;&lt;strong&gt;&lt;span style="font-size:12.0pt;font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#3A3A3A;"&gt;action&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;自定义建议项最常用的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent action&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;是&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/content/Intent.html#ACTION_VIEW"&gt;&lt;span style="color:#006699"&gt;ACTION_VIEW&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;，适用于要启动某些应用的场合，类似单词的释义、联系人信息、网页等。当然，&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent action&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;也可以是其它任何&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;，甚至每个建议项的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;都可以不同。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;根据全部建议项是否共用同一种&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent action&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;，可以用以下两种方式来定义&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;：&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;a.&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;利用搜索配置文件的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;android:searchSuggestIntentAction&lt;/span&gt; &lt;span style="font-family:宋体;"&gt;属性来定义所有建议项的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;例如：&lt;/span&gt;&lt;/p&gt;  &lt;div style="border:solid #CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FAFAFA; margin-left:42.0pt;margin-right:0cm"&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;&amp;lt;?&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt;xml version&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#008800;"&gt;"1.0"&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt; encoding&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#008800;"&gt;"utf-8"&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;?&amp;gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#000088;"&gt;&amp;lt;searchable&lt;/span&gt; &lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;xmlns:android&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"http://schemas.android.com/apk/res/android"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:label&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#008800;"&gt;"@string/app_label"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:hint&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#008800;"&gt;"@string/search_hint"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSuggestAuthority&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"com.example.MyCustomSuggestionProvider"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;strong&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSuggestIntentAction&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;=&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"android.Intent.action.VIEW"&lt;/span&gt;&lt;/strong&gt; &lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#000088;"&gt;&amp;gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#000088;"&gt;&amp;lt;/searchable&amp;gt;&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;b.&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;利用&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_INTENT_ACTION"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_INTENT_ACTION&lt;/span&gt;&lt;/a&gt;&lt;/span&gt; &lt;span style="font-family:宋体;"&gt;列来定义单个建议项的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;在建议项表中添加&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_INTENT_ACTION"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_INTENT_ACTION&lt;/span&gt;&lt;/a&gt;&lt;/span&gt; &lt;span style=" font-family:宋体;"&gt;列，并把每个建议项所用到的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;放入其中（类似&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;"android.Intent.action.VIEW"&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;）。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:10.5pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;也可以混合使用以上两种方式。比如，可以包含&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;android:searchSuggestIntentAction&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;属性，为所有建议项提供默认&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;。然后在某些建议项的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_INTENT_ACTION"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_INTENT_ACTION&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;列中声明另一个&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;，以覆盖默认&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;。如果&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_INTENT_ACTION"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_INTENT_ACTION&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;列中未包含值，将会采用&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;android:searchSuggestIntentAction&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;属性提供的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;。&lt;/span&gt;&lt;/p&gt;  &lt;div style="border:none;border-left:solid #99AACC 3.0pt; padding:0cm 0cm 0cm 6.0pt;margin-left:10.5pt;margin-right:0cm"&gt;  &lt;p style="margin-left:0cm; text-align:left;border:none;padding:0cm;" align="left"&gt;&lt;strong&gt;&lt;span style="font-family:宋体;"&gt;注意：&lt;/span&gt;&lt;/strong&gt;&lt;span style=" font-family:宋体;"&gt;如果搜索配置文件中未包含&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;android:searchSuggestIntentAction&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;属性，则&lt;em&gt;必须&lt;/em&gt;为每个建议项的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_INTENT_ACTION"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_INTENT_ACTION&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;列指定值，否则，&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;将会启动失败。&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;strong&gt;&amp;nbsp;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;a name="Declaring_Data"&gt;&lt;strong&gt;&lt;span style="font-size:12.0pt; font-family:宋体;"&gt;声明&lt;/span&gt;&lt;/strong&gt;&lt;/a&gt;&lt;span&gt;&lt;strong&gt;&lt;span style="font-size:12.0pt; font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;span&gt;&lt;strong&gt;&lt;span style="font-size:12.0pt; font-family:宋体;"&gt;的&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;span&gt;&lt;strong&gt;&lt;span style="font-size:12.0pt; font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;data&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;当用户选中一个建议项时，搜索&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;activity&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;将会接收到附带指定&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;（如上节所述）的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;，但该&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;还必须同时携带&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;data&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;才行，这样搜索&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;activity&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;才能识别出选中的建议项。有一点尤为重要，&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;data&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;应该是能唯一标识每个建议项的信息，比如&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;SQLite&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;表中的行&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;ID&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;。在收到&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;时，可以利用&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/content/Intent.html#getData%28%29"&gt;&lt;span style="color:#006699"&gt;getData()&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;或&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/content/Intent.html#getDataString%28%29"&gt;&lt;span style="color:#006699"&gt;getDataString()&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;.&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;来读取附带的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;data&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;可以用以下两种方式来定义&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;中的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;data&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;：&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;&lt;span&gt;a.&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;在建议项表的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_INTENT_DATA"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_INTENT_DATA&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;列中为每个建议项都定义一个&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;data&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;。&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;在建议项表中包含&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_INTENT_DATA"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_INTENT_DATA&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;列，以便为每个&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;intent &lt;/span&gt;&lt;span style=" font-family:宋体;color:#333333;"&gt;都提供必要的&lt;/span&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;data&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;信息，然后把每行的唯一信息填入。该列中的值将会原封不动地附加到&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#333333;"&gt;intent &lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;中。可以利用&lt;/span&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/content/Intent.html#getData%28%29"&gt;&lt;span style="color:#006699"&gt;getData()&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;或&lt;/span&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/content/Intent.html#getDataString%28%29"&gt;&lt;span style="color:#006699"&gt;getDataString()&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;来读取它们。&lt;/span&gt;&lt;/p&gt;  &lt;div style="border:none;border-left:solid #99AACC 3.0pt; padding:0cm 0cm 0cm 6.0pt;margin-left:42.0pt;margin-right:0cm"&gt;  &lt;p style="margin-left:0cm; text-align:left;border:none;padding:0cm;" align="left"&gt;&lt;strong&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;提示：&lt;/span&gt;&lt;/strong&gt; &lt;span style="font-family:宋体; color:#333333;"&gt;通常表的行&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;ID&lt;/span&gt;&lt;span style=" font-family:宋体;color:#333333;"&gt;最容易被用作&lt;/span&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;Intent data&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;，因为它总是唯一的。最简便的方式就是用&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_INTENT_DATA"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_INTENT_DATA&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;列名作为行&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;ID&lt;/span&gt;&lt;span style=" font-family:宋体;color:#333333;"&gt;的别名。具体示例请参阅&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;&lt;a href="http://developer.android.com/resources/samples/SearchableDictionary/index.html"&gt;&lt;span style="font-family:宋体;color:#006699"&gt;支持检索的字典例程&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;，其中&lt;/span&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/database/sqlite/SQLiteQueryBuilder.html"&gt;&lt;span style="color:#006699"&gt;SQLiteQueryBuilder&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;创建了一个列名和别名的映射关系。&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;&lt;span&gt;b.&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=" font-family:宋体;color:#333333;"&gt;把&lt;/span&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;data URI&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;分解为两部分：所有建议项公共的部分和每个建议项唯一的部分。把这两部分分别放入搜索配置文件的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;android:searchSuggestintentData&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;属性和建议项表的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_INTENT_DATA_ID"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_INTENT_DATA_ID&lt;/span&gt;&lt;/a&gt;&lt;/span&gt; &lt;span style="font-family:宋体;color:#333333;"&gt;列中。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;在搜索配置文件的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;android:searchSuggestIntentData&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;属性中声明全部建议项公共的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;URI&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;部分。例如：&lt;/span&gt;&lt;/p&gt;  &lt;div style="border:solid #CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FAFAFA; margin-left:21.0pt;margin-right:0cm"&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;&amp;lt;?&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt;xml version&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#008800;"&gt;"1.0"&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt; encoding&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#008800;"&gt;"utf-8"&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;?&amp;gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#000088;"&gt;&amp;lt;searchable&lt;/span&gt; &lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;xmlns:android&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"http://schemas.android.com/apk/res/android"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:label&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#008800;"&gt;"@string/app_label"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:hint&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#008800;"&gt;"@string/search_hint"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSuggestAuthority&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"com.example.MyCustomSuggestionProvider"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSuggestIntentAction&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"android.intent.action.VIEW"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;strong&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSuggestIntentData&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;=&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"content://com.example/datatable"&lt;/span&gt;&lt;/strong&gt; &lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#000088;"&gt;&amp;gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#000088;"&gt;&amp;lt;/searchable&amp;gt;&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;然后在建议项表中的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_INTENT_DATA_ID"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_INTENT_DATA_ID&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;列中放入每个建议项的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;final path&lt;/span&gt;&lt;span style=" font-family:宋体;color:#333333;"&gt;（唯一部分）。用户选中建议项后，系统会把&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;android:searchSuggestIntentData&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;中指定的字符串加上斜杠&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt; ("/")&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;，再加入各自&lt;/span&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_INTENT_DATA_ID"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_INTENT_DATA_ID&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;列中的值，组成一个完整的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;content URI&lt;/span&gt;&lt;span style=" font-family:宋体;color:#333333;"&gt;。然后就可以用&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/content/Intent.html#getData%28%29"&gt;&lt;span style="color:#006699"&gt;getData()&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;读取&lt;/span&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/net/Uri.html"&gt;&lt;span style="color:#006699"&gt;Uri&lt;/span&gt;&lt;/a&gt;&lt;/span&gt; &lt;span style="font-family:宋体; color:#333333;"&gt;了。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;a name="add_more_Data"&gt;&lt;strong&gt;&lt;span style="font-family:宋体;color:#3A3A3A;"&gt;附加更多的数据&lt;/span&gt;&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;    &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;如果需要在&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;中表示更多信息，可以添加另一列&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_INTENT_EXTRA_DATA"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_INTENT_EXTRA_DATA&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;来存放与建议项相关的附加数据。在此列中存放的数据将被置于&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;附带&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;Bundle&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#EXTRA_DATA_KEY"&gt;&lt;span style="color:#006699"&gt;EXTRA_DATA_KEY&lt;/span&gt;&lt;/a&gt;&lt;/span&gt; &lt;span style=" font-family:宋体;"&gt;部分中。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;/p&gt;  &lt;div style="border:none;border-top:solid #CCCCCC 1.5pt; padding:6.0pt 0cm 0cm 0cm"&gt;  &lt;p style="text-align:left;border:none; padding:0cm;" align="left"&gt;&lt;a name="Handling_Intent"&gt;&lt;strong&gt;&lt;span style="font-size:14.0pt;font-family:宋体; color:#111111;"&gt;处理&lt;/span&gt;&lt;/strong&gt;&lt;/a&gt;&lt;span&gt;&lt;strong&gt;&lt;span style="font-size:14.0pt;font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#111111;"&gt;Intent&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;    &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;color:#333333;"&gt;现在已经能利用自定义&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#333333;"&gt;intent&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;提供自定义的搜索建议项，用户选中某建议项时，需要用搜索&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;activity&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;来处理这些&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;intent&lt;/span&gt;&lt;span style=" font-family:宋体;color:#333333;"&gt;。在这之前，搜索&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;activity&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;已经对&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/content/Intent.html#ACTION_SEARCH"&gt;&lt;span style="color:#006699"&gt;ACTION_SEARCH&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt; intent&lt;/span&gt;&lt;span style=" font-family:宋体;color:#333333;"&gt;进行了处理。下面是如何在&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;activity&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/Activity.html#onCreate%28android.os.Bundle%29"&gt;&lt;span style="color:#006699"&gt;onCreate()&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;回调方法中处理&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;intent&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;的示例：&lt;/span&gt;&lt;/p&gt;  &lt;div style="border:solid #CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FAFAFA; margin-left:21.0pt;margin-right:0cm"&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#660066;"&gt;Intent&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt; intent &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt; getIntent&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;();&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#000088;"&gt;if&lt;/span&gt; &lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;(&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#660066;"&gt;Intent&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;.&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt;ACTION_SEARCH&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;.&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt;equals&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;(&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt;intent&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;.&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt;getAction&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;()))&lt;/span&gt; &lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;{&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#880000;"&gt;// &lt;/span&gt;&lt;span style=" font-family:宋体;color:#880000;"&gt;处理正常的搜索请求&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#660066;"&gt;String&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt; query &lt;/span&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt; intent&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;.&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt;getStringExtra&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;(&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#660066;"&gt;SearchManager&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;.&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt;QUERY&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;);&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; doSearch&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;(&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt;query&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;);&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;}&lt;/span&gt; &lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#000088;"&gt;else&lt;/span&gt; &lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#000088;"&gt;if&lt;/span&gt; &lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;(&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#660066;"&gt;Intent&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;.&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt;ACTION_VIEW&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;.&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt;equals&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;(&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt;intent&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;.&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt;getAction&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;()))&lt;/span&gt; &lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;{&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#880000;"&gt;// &lt;/span&gt;&lt;span style=" font-family:宋体;color:#880000;"&gt;处理对建议项的点击操作（因为建议项都是使用&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#880000;"&gt;ACTION_VIEW&lt;/span&gt;&lt;span style="font-family:宋体; color:#880000;"&gt;的）&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#660066;"&gt;Uri&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt; data &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt; intent&lt;/span&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;.&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;getData&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;();&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; showResult&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;(&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt;data&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;);&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;}&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;在上例中，&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;intent action&lt;/span&gt;&lt;span style=" font-family:宋体;color:#333333;"&gt;是&lt;/span&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/content/Intent.html#ACTION_VIEW"&gt;&lt;span style="color:#006699"&gt;ACTION_VIEW&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;，并且通过组合&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;android:searchSuggestIntentData&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;字符串和&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_INTENT_DATA_ID"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_INTENT_DATA_ID&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;列，数据已包含了指向建议项的完整&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;URI&lt;/span&gt;&lt;span style=" font-family:宋体;color:#333333;"&gt;。该&lt;/span&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;URI&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;传给本地的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;showResult()&lt;/span&gt;&lt;span style=" font-family:宋体;color:#333333;"&gt;方法，对&lt;/span&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;URI&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;指定的建议项在&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;中执行查询。&lt;/span&gt;&lt;/p&gt;  &lt;div style="border:none;border-left:solid #99AACC 3.0pt; padding:0cm 0cm 0cm 6.0pt;margin-left:21.0pt;margin-right:0cm"&gt;  &lt;p style="margin-left:0cm; text-align:left;border:none;padding:0cm;" align="left"&gt;&lt;strong&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;注意：&lt;/span&gt;&lt;/strong&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;在&lt;/span&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;Android manifest&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;文件中，&lt;em&gt;不需要&lt;/em&gt;对&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;android:searchSuggestIntentAction&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;属性或&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_INTENT_ACTION"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_INTENT_ACTION&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;列设定的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;intent action&lt;/span&gt;&lt;span style=" font-family:宋体;color:#333333;"&gt;添加&lt;/span&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;intent &lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;过滤器。系统将根据名称启动搜索&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;activity&lt;/span&gt;&lt;span style=" font-family:宋体;color:#333333;"&gt;并传递建议项的&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;intent&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;，因此&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;activity&lt;/span&gt;&lt;span style=" font-family:宋体;color:#333333;"&gt;不需要对可接受的&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;action&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;进行声明。&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;/p&gt;  &lt;div style="border:none;border-top:solid #CCCCCC 1.5pt; padding:6.0pt 0cm 0cm 0cm"&gt;  &lt;p style="text-align:left;border:none; padding:0cm;" align="left"&gt;&lt;a name="Rewriting_query"&gt;&lt;strong&gt;&lt;span style="font-size:14.0pt;font-family:宋体; color:#111111;"&gt;改写搜索请求文本&lt;/span&gt;&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;  &lt;/div&gt;    &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;color:#333333;"&gt;如果用户使用方向控制设备（比如轨迹球或&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#333333;"&gt;d-pad&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;）来浏览建议项列表，则默认情况下搜索请求文本不会被更新。不过可以暂时用当前焦点所在的建议项来改写用户请求文本，让它显示在搜索文本框中。这样就能让用户看到建议的请求文本（假如合适的话）并能在发送请求之前选中搜索框来编辑请求文本。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;可以通过以下方式来改写搜索请求文本：&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;&lt;span&gt;a.&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=" font-family:宋体;color:#333333;"&gt;在搜索配置文件中添加&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;android:searchMode&lt;/span&gt; &lt;span style="font-family:宋体;color:#333333;"&gt;属性，并赋值为&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;"queryRewriteFromText" &lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;。这种情况下，建议项表的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_TEXT_1"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_TEXT_1&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;列中的内容将会用于改写请求文本。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;&lt;span&gt;b.&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=" font-family:宋体;color:#333333;"&gt;在搜索配置文件中添加&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;android:searchMode&lt;/span&gt; &lt;span style="font-family:宋体;color:#333333;"&gt;属性，并赋值为&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;"queryRewriteFromData" &lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;。这种情况下，建议项表的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_INTENT_DATA"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_INTENT_DATA&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;列中的内容将会用于改写请求文本。这只适用于用户需要能看见&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#333333;"&gt;URI&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;或其它格式数据的场合，比如&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;HTTP URL&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;。内部的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;URI&lt;/span&gt;&lt;span style=" font-family:宋体;color:#333333;"&gt;格式不应该使用这种方式来改写请求文本。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;&lt;span&gt;c.&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=" font-family:宋体;color:#333333;"&gt;在建议项表的&lt;/span&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_QUERY"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_QUERY&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;列内提供唯一的请求文本串。如果当前建议项的该列存在并且包含值，将被用于改写请求文本（并且覆盖上面的两种方式）。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#333333;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;  &lt;div style="border:none;border-top:solid #CCCCCC 1.5pt; padding:6.0pt 0cm 0cm 0cm"&gt;  &lt;p style="text-align:left;border:none; padding:0cm;" align="left"&gt;&lt;a name="expose_suggestion"&gt;&lt;strong&gt;&lt;span style="font-size:14.0pt;font-family:宋体; color:#111111;"&gt;向&lt;/span&gt;&lt;/strong&gt;&lt;/a&gt;&lt;span&gt;&lt;strong&gt;&lt;span style="font-size:14.0pt;font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#111111;"&gt;&amp;#8220;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;span&gt;&lt;strong&gt;&lt;span style="font-size:14.0pt; font-family:宋体;color:#111111;"&gt;快速搜索框&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;span&gt;&lt;strong&gt;&lt;span style="font-size:14.0pt;font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#111111;"&gt;&amp;#8221;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;strong&gt;&lt;span style="font-size:14.0pt;font-family:宋体;color:#111111;"&gt;提供搜索建议项&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;/div&gt;    &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;color:#333333;"&gt;一旦把应用程序配置成提供自定义搜索建议项的话，让它适用于全局访问的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#333333;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;快速搜索框&lt;/span&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;是很容易的，只要修改一下搜索配置文件，让其包含值为&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#333333;"&gt;"true"&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;android:includeInGlobalSearch&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;属性即可。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;color:#333333;"&gt;唯一要进行额外工作的情况，就是需要向&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#333333;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;请求读权限的时候。这种情况下，需要添加&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&amp;lt;path-permission&amp;gt;&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;元素，赋予&lt;/span&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;快速搜索框&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;color:#333333;"&gt;对&lt;/span&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;的读权限。例如：&lt;/span&gt;&lt;/p&gt;  &lt;div style="border:solid #CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FAFAFA; margin-left:21.0pt;margin-right:0cm"&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#000088;"&gt;&amp;lt;provider&lt;/span&gt; &lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:name&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"MySuggestionProvider"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#882288;"&gt;android:authorities&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"com.example.MyCustomSuggestionProvider"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#882288;"&gt;android:readPermission&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"com.example.provider.READ_MY_DATA"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#882288;"&gt;android:writePermission&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"com.example.provider.WRITE_MY_DATA"&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#000088;"&gt;&amp;gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#000088;"&gt;&amp;lt;path-permission&lt;/span&gt; &lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:pathPrefix&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"/search_suggest_query"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:readPermission&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"android.permission.GLOBAL_SEARCH"&lt;/span&gt; &lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#000088;"&gt;/&amp;gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#000088;"&gt;&amp;lt;/provider&amp;gt;&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;color:#333333;"&gt;在上例中，&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#333333;"&gt;provider&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;先规定了对&lt;/span&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;content&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;的读和写权限。&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&amp;lt;path-permission&amp;gt;&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;元素修改了这个规定，当存在&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;"android.permission.GLOBAL_SEARCH"&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;权限时，允许对路径前缀为&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;"/search_suggest_query"&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;的内容进行读取访问。这样就对&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;快速搜索框&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;赋予向&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;查询建议项的权限。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;如果&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;未明确指定读权限，默认情况下&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;快速搜索框&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;是可以读取其中内容的。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;strong&gt;&amp;nbsp;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;a name="suggestion_on_device"&gt;&lt;strong&gt;&lt;span style="font-size: 12.0pt;font-family:宋体;"&gt;启用设备上的建议项&lt;/span&gt;&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;    &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;即使已经把应用程序配置为向&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;快速搜索框&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;提供建议项，缺省情况下也不会真正生效。是否要在&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;快速搜索框&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;中包含应用程序所提供的建议项，是需要由用户选择的。为了启用应用程序提供的搜索建议项，必须打开&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;可搜索的项&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;（在&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;搜索&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;搜索设置&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;菜单中）并指定应用程序为可搜索项。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;每个可用于&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;快速搜索框&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;的应用程序都会在&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;可搜索的项&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;设置页面中有一个条目。条目中包含了应用程序名称和简要描述信息，这些信息描述了应用程序能够搜索并提交给&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;快速搜索框&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;作为建议项的内容。通过在搜索配置文件中添加&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;android:searchSettingsDescription&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;属性，可以定义可搜索应用程序的这些描述文字信息。例如：&lt;/span&gt;&lt;/p&gt;  &lt;div style="border:solid #CCCCCC 1.0pt;padding:8.0pt 8.0pt 8.0pt 8.0pt;background:#FAFAFA; margin-left:21.0pt;margin-right:0cm"&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;&amp;lt;?&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt;xml version&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#008800;"&gt;"1.0"&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt; encoding&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#008800;"&gt;"utf-8"&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;?&amp;gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#000088;"&gt;&amp;lt;searchable&lt;/span&gt; &lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;xmlns:android&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"http://schemas.android.com/apk/res/android"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:label&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#008800;"&gt;"@string/app_label"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:hint&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#008800;"&gt;"@string/search_hint"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSuggestAuthority&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"com.example.MyCustomSuggestionProvider"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSuggestIntentAction&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"android.intent.action.VIEW"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:includeInGlobalSearch&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"true"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;strong&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSettingsDescription&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;=&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"@string/search_description"&lt;/span&gt;&lt;/strong&gt; &lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#000088;"&gt;&amp;gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#000088;"&gt;&amp;lt;/searchable&amp;gt;&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;android:searchSettingsDescription&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;的值应该尽可能地简明扼要，能表明可搜索的内容即可。比如：音乐程序可以用&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;艺术家、专辑和音轨&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;，记事本程序则可用&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;已保存的记录&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;。提供这些描述信息是非常重要的，这样用户就知道有哪些建议项可用。当&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;android:includeInGlobalSearch&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;的值为&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;true&amp;#8221;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;时，应该确保能包含该属性。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;请记住，用户必须访问设置菜单并为应用程序启用搜索建议项，然后搜索建议项才能出现在&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;快速搜索框中&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;。因此，假如搜索是应用程序的重要特性之一，则可能需要考虑通过某种方式提醒用户进行设置&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8212;&amp;#8212;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;可以在第一次启动应用程序时提醒一下，告诉用户如何启用&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;快速搜索框&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;中的搜索建议项。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;strong&gt;&amp;nbsp;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;a name="Managing_shortcut"&gt;&lt;strong&gt;&lt;span style="font-family:宋体;"&gt;管理&lt;/span&gt;&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;/strong&gt;&lt;span&gt;&lt;strong&gt;&lt;span style=" font-family:宋体;"&gt;快速搜索框&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;strong&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;/strong&gt;&lt;span&gt;&lt;strong&gt;&lt;span style=" font-family:宋体;"&gt;建议项的快捷方式&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;用户在&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;快速搜索框&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;选中的建议项可以自动变为快捷方式。这些快捷方式是系统从&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;中复制过来的建议项，这样就能快速访问建议项，而不必再次查询&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;默认情况下，&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;快速搜索框&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;所读取的全部建议项都能启用快捷方式。如果建议项数据经过一段时间后发生了变化，可以发起刷新快捷方式的请求。举例来说，如果建议项指向动态数据，比如联系人的在线状态，那就应该在显示给用户的时候刷新建议项的快捷方式。只要在建议项表中包含&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_SHORTCUT_ID"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_SHORTCUT_ID&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;列即可实现这一目标。利用该列可以把每个建议项的快捷方式配置为以下动作：&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;a.&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;让&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;快速搜索框&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;重新查询&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider &lt;/span&gt;&lt;span style="font-family:宋体;"&gt;，以获取建议项快捷方式的最新版本。&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#333333;"&gt;&lt;br /&gt; &lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;在&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_SHORTCUT_ID"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_SHORTCUT_ID&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;列中指定一个值，每次显示快捷方式时都会去查询建议项的最新版本。刷新请求返回后，快捷方式将会与最新数据一起显示出来，这时建议项已经用最新信息刷新。刷新请求利用&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_URI_PATH_SHORTCUT"&gt;&lt;span style="color:#006699"&gt;SUGGEST_URI_PATH_SHORTCUT&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;的&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;URI&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;路径发送至&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;，（而不是&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_URI_PATH_QUERY"&gt;&lt;span style="color:#006699"&gt;SUGGEST_URI_PATH_QUERY&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;）。&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&lt;br /&gt; &lt;/span&gt;&lt;span style="font-family:宋体;"&gt;返回的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/database/Cursor.html"&gt;&lt;span style="color:#006699"&gt;Cursor&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;应该包含数据列与原来相同的一条建议项，或者为空&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8212;&amp;#8212;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;表示快捷方式不可用了（这时，建议项将会消失，快捷方式也会被删除）。&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&lt;br /&gt; &lt;/span&gt;&lt;span style="font-family:宋体;"&gt;如果建议项指向数据的刷新可能需要耗费很长时间，比如基于网络的的刷新，则可以在建议项表中添加&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_SPINNER_WHILE_REFRESHING"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_SPINNER_WHILE_REFRESHING&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;列并赋值为&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;true&amp;#8221;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;，这样刷新时就会显示为进度滚轮图标。除&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;true&amp;#8221;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;以外的任何值都不会显示进度滚轮。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;b.&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;完全阻止把建议项复制为快捷方式。&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&lt;br /&gt; &lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;把&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_SHORTCUT_ID"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_SHORTCUT_ID&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;列赋值为&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_NEVER_MAKE_SHORTCUT"&gt;&lt;span style="color:#006699"&gt;SUGGEST_NEVER_MAKE_SHORTCUT&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;。&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;这时，建议项就不会复制为快捷方式了。仅当确实不想让以前复制过的建议项显示出来，才会这么做。（如果在该列中提供正常的值并重新调用的话，建议项快捷方式将在刷新请求返回后才显示出来。）&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:-21.0pt;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;&lt;span&gt;c.&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;使用默认的快捷方式动作。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;建议项不会变化且可以保存为快捷方式，则保持&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_SHORTCUT_ID"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_SHORTCUT_ID&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;列为空即可。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;如果建议项全都不会发生变化，那就根本不需要&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_SHORTCUT_ID"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_SHORTCUT_ID&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;列。&lt;/span&gt;&lt;/p&gt;  &lt;div style="border:none;border-left:solid #99AACC 3.0pt; padding:0cm 0cm 0cm 6.0pt;margin-left:21.0pt;margin-right:0cm"&gt;  &lt;p style="margin-left:0cm; text-align:left;border:none;padding:0cm;" align="left"&gt;&lt;strong&gt;&lt;span style="font-family:宋体;"&gt;注意：&lt;/span&gt;&lt;/strong&gt;&lt;span style=" font-family:宋体;"&gt;上述值只是被视作应用程序的需求而已，&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;快速搜索框&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;有权最终确定是否建立建议项的快捷方式，它并不保证指定的建议项快捷方式动作一定会实现。&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;strong&gt;&amp;nbsp;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;strong&gt;&lt;span style="font-family: 宋体;"&gt;关于&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style=" font-family:宋体;"&gt;快速搜索框&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style=" font-family:宋体;"&gt;建议项的级别&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;一旦应用程序的搜索建议项能够用于&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;快速搜索框&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;，则&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;快速搜索框&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;将会对其评级，并确定如何根据请求把建议项展现给用户。这可能会依赖于有多少其它应用程序也对该请求返回了结果，也可能会根据用户选中哪个应用程序来返回结果的频度。建议项的评级并没有固定的规则，对于给定的搜索请求是否显示应用程序的建议项也是不能保证的。可以大致这么认为，高质量的结果会增加建议项显示在显著位置的可能性，而低质的建议项则更可能会获得较低的级别或者干脆就不会显示。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left; background:#DAF3FC" align="left"&gt;&lt;span style="font-family:宋体;"&gt;关于自定义搜索建议项的完整范例，请参阅&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#333333;"&gt;&lt;a href="http://developer.android.com/resources/samples/SearchableDictionary/index.html"&gt;&lt;span style="font-family:宋体;color:#006699"&gt;支持检索的字典例程&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;。&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;/div&gt;&lt;img src="http://www.cnblogs.com/over140/aggbug/2314114.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/over140/archive/2012/01/06/2314114.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/over140/archive/2012/01/04/2308492.html</id><title type="text">Android应用开发提高系列（1）——《Practical Java 中文版》读书笔记（上）</title><summary type="text">从开始学习Android到现在，囫囵吞枣学了许多控件、布局的使用方法和技巧，看了许多相关的文章，也积累了不少项目经验。藉此通过归纳、总结和梳理相关知识，扎实基础，进一步提高Android开发技能。学好Android需要扎实的Java功底，所以将本文作为系列文章的开篇。本系列文章面向有一定Android开发经验的读者，欢迎交流！</summary><published>2012-01-04T03:08:00Z</published><updated>2012-01-04T03:08:00Z</updated><author><name>农民伯伯</name><uri>http://www.cnblogs.com/over140/</uri></author><link rel="alternate" href="http://www.cnblogs.com/over140/archive/2012/01/04/2308492.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/over140/archive/2012/01/04/2308492.html"/><content type="html">&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;前言&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;从开始学习Android到现在，囫囵吞枣学了许多控件、布局的使用方法和技巧，看了许多相关的文章，也积累了不少项目经验。藉此通过归纳、总结和梳理相关知识，扎实基础，进一步提高Android开发技能。学好Android需要扎实的Java功底，所以将本文作为系列文章的开篇。本系列文章面向有一定Android开发经验的读者，欢迎交流！&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div&gt;&lt;p style="line-height: 19px; "&gt;&lt;strong style="color: red; "&gt;声明&lt;/strong&gt;&lt;/p&gt;&lt;p style="line-height: 19px; "&gt;欢迎转载，但请保留文章原始出处:)&amp;nbsp;&lt;br /&gt;&lt;/p&gt;&lt;p style="line-height: 19px; "&gt;博客园：http://www.cnblogs.com&lt;/p&gt;　　　　农民伯伯： http://over140.cnblogs.com&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;书籍&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;《Practical Java 中文版》　　03版　　侯捷、刘永丹译　　&lt;/p&gt;&lt;p&gt;本书和《Effective Java》，对前述重要而基础的技术细微处有着详尽、深刻、实用的介绍、剖析和范例，又以独立条款之姿展现，在内容的扎实度、可读性及易读性上的表现均十分良好。 &lt;br /&gt;&lt;/p&gt;&lt;p&gt;本书围绕Java编程中遇到的实际问题展开。可以说书中所列专题正是那些令许多Java程序员困惑不已的FAQ。作者擅长采用恰如其分的示例来阐释问题，以平时的语言娓娓道出中肯的建议。这些建议往往一语中的，能直接融入编程工作中，可见它们确实是出自作者从实践中获得的真知灼见。&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;正文 &lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color: red;"&gt;注意：条目和用语可能与书籍有所出入，但尽量保持原样加一些自己的理解。&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;一、&lt;strong&gt;一般技术 &lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;1.&amp;nbsp; Java唯一一种参数传递机制：by value（传值）。&lt;/p&gt;&lt;p&gt;备注：当参数为对象时，以传值方式传递对象的引用。（个人理解：传递指针的拷贝） &lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;2.&amp;nbsp; 对不变的data和object references使用final&lt;/p&gt;&lt;p&gt;备注：当声明一个对象为final时，不能改变其指向，但能改变其对象的值。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;3.&amp;nbsp; 缺省情况下所有非私有(non-private)、非静态(non-static)函数都可被覆写。&lt;br /&gt;&lt;/p&gt;&lt;p&gt;3.1　　如果函数不想被子类覆写，将函数声明为final即可。 &lt;/p&gt;&lt;div&gt;　　　　　　3.2　　如果类不想被子类覆写，将类声明为final即可，从而禁止覆写该类所有函数。还能提高性能。&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;4.&amp;nbsp; 在数组和Vectors之间慎重选择。&lt;br /&gt;&lt;/p&gt;&lt;div&gt;  &lt;table style="margin-left:26.7pt;border-collapse:collapse;border:none;" border="1" cellpadding="0" cellspacing="0"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td style="width:77.95pt;border:solid black 1.0pt;background:#DBE5F1;padding:0cm 5.4pt 0cm 5.4pt" valign="top" width="104"&gt;   &lt;p&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="width:179.4pt;border:solid black 1.0pt;border-left:none;background:#DBE5F1;padding:0cm 5.4pt 0cm 5.4pt" valign="top" width="239"&gt;   &lt;p style="text-align:center" align="center"&gt;&lt;strong&gt;&lt;span style="   font-family:宋体;"&gt;数组&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="width:142.05pt;border:solid black 1.0pt;border-left:none;background:#DBE5F1;padding:0cm 5.4pt 0cm 5.4pt" valign="top" width="189"&gt;   &lt;p style="text-align:center" align="center"&gt;&lt;strong&gt;Vector&lt;/strong&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="width:77.95pt;border:solid black 1.0pt;border-top:none;padding:0cm 5.4pt 0cm 5.4pt" valign="top" width="104"&gt;   &lt;p style="text-align:center" align="center"&gt;&lt;span style="font-family:宋体;"&gt;存储数据类型&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="width:179.4pt;border-top:none;border-left:   none;border-bottom:solid black 1.0pt;   border-right:solid black 1.0pt;padding:0cm 5.4pt 0cm 5.4pt" valign="top" width="239"&gt;   &lt;p style="text-align:center" align="center"&gt;&lt;span style="font-family:宋体;"&gt;基本类型、引用类型&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="width:142.05pt;border-top:none;border-left:   none;border-bottom:solid black 1.0pt;   border-right:solid black 1.0pt;padding:0cm 5.4pt 0cm 5.4pt" valign="top" width="189"&gt;   &lt;p style="text-align:center" align="center"&gt;&lt;span style="font-family:宋体;"&gt;引用类型&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="width:77.95pt;border:solid black 1.0pt;border-top:none;padding:0cm 5.4pt 0cm 5.4pt" valign="top" width="104"&gt;   &lt;p style="text-align:center" align="center"&gt;&lt;span style="font-family:宋体;"&gt;元素默认值&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="width:179.4pt;border-top:none;border-left:   none;border-bottom:solid black 1.0pt;   border-right:solid black 1.0pt;padding:0cm 5.4pt 0cm 5.4pt" valign="top" width="239"&gt;   &lt;p style="text-align:center" align="center"&gt;Yes&lt;/p&gt;   &lt;/td&gt;   &lt;td style="width:142.05pt;border-top:none;border-left:   none;border-bottom:solid black 1.0pt;   border-right:solid black 1.0pt;padding:0cm 5.4pt 0cm 5.4pt" valign="top" width="189"&gt;   &lt;p style="text-align:center" align="center"&gt;No&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="width:77.95pt;border:solid black 1.0pt;border-top:none;padding:0cm 5.4pt 0cm 5.4pt" valign="top" width="104"&gt;   &lt;p style="text-align:center" align="center"&gt;&lt;span style="font-family:宋体;"&gt;自动改变大小&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="width:179.4pt;border-top:none;border-left:   none;border-bottom:solid black 1.0pt;   border-right:solid black 1.0pt;padding:0cm 5.4pt 0cm 5.4pt" valign="top" width="239"&gt;   &lt;p style="text-align:center" align="center"&gt;&lt;span style="font-family:宋体;"&gt;固定不变&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="width:142.05pt;border-top:none;border-left:   none;border-bottom:solid black 1.0pt;   border-right:solid black 1.0pt;padding:0cm 5.4pt 0cm 5.4pt" valign="top" width="189"&gt;   &lt;p style="text-align:center" align="center"&gt;&lt;span style="font-family:宋体;"&gt;动态增长&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="width:77.95pt;border:solid black 1.0pt;border-top:none;padding:0cm 5.4pt 0cm 5.4pt" valign="top" width="104"&gt;   &lt;p style="text-align:center" align="center"&gt;&lt;span style="font-family:宋体;"&gt;速度快&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="width:179.4pt;border-top:none;border-left:   none;border-bottom:solid black 1.0pt;   border-right:solid black 1.0pt;padding:0cm 5.4pt 0cm 5.4pt" valign="top" width="239"&gt;   &lt;p style="text-align:center" align="center"&gt;Yes&lt;/p&gt;   &lt;/td&gt;   &lt;td style="width:142.05pt;border-top:none;border-left:   none;border-bottom:solid black 1.0pt;   border-right:solid black 1.0pt;padding:0cm 5.4pt 0cm 5.4pt" valign="top" width="189"&gt;   &lt;p style="text-align:center" align="center"&gt;No&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;/div&gt;&lt;p&gt;备注： Vector内部实际是以数组实现的。&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;5.&amp;nbsp; 多态优于instanceof，必要时才使用instanceof。&lt;/p&gt;&lt;p&gt;备注：例如从父类转型为派生类时，需要使用instanceof。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;6.&amp;nbsp; 一旦不需要的对象引用，就将它设为null。&lt;/p&gt;&lt;p&gt;备注：如果局部变量的引用使用完离函数结束前还需要执行较大代码，可在使用完后设置为null，以便或许能使其在垃圾回收器下次运行时被回收。 &lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;二、 &lt;strong&gt;对象与相等性&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;1.&amp;nbsp; 区别&amp;nbsp; == 和 equals()&lt;/p&gt;&lt;p&gt;备注：请使用 == 测试两个基本类型是否完全相同，或测试两个对象引用是否指向同一个对象；使用equals()比较两个对象的内容是否相等。 &lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;2.&amp;nbsp; 不要依赖equals()缺省实现&lt;/p&gt;&lt;p&gt;备注：所有Java对象都隐含继承了java.lang.Object，默认的equals()只是检查对象引用是否指向同一个对象。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;3.&amp;nbsp; 实现equals()建议：&lt;/p&gt;&lt;div&gt;&lt;p&gt;3.1&amp;nbsp; 请检查是否等于this&lt;br /&gt; &lt;/p&gt;&lt;p&gt;备注：测试是否指向同一个对象 &lt;/p&gt;&lt;/div&gt;&lt;p&gt;3.2&amp;nbsp; 优先考虑使用getClass()&lt;/p&gt;&lt;p&gt;备注：getClass()返回某个对象的运行期类(runtime class)。确保只有相同class所产生的对象才有机会被视为相等。范例：&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;"&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;class&lt;/span&gt;&amp;nbsp;Base&amp;nbsp;{&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;@Override&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&amp;nbsp;boolean&amp;nbsp;equals(Object&amp;nbsp;obj)&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;if&lt;/span&gt;(obj&amp;nbsp;!=&amp;nbsp;&lt;span style="color: #0000FF;"&gt;null&lt;/span&gt;&amp;nbsp;&amp;amp;&amp;amp;&amp;nbsp;getClass()&amp;nbsp;==&amp;nbsp;obj.getClass()){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;继续比较相等性或直接返回true&lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;return&lt;/span&gt;&amp;nbsp;&lt;span style="color: #0000FF;"&gt;false&lt;/span&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;&lt;/div&gt;　　　　　　3.3&amp;nbsp; 调用super.equals()唤起父类的相关行为&lt;p&gt;备注：当你为一个派生类撰写equals()时，你必须检查除java.lang.Object之外所有父类，看看它们是否都实现了equals()。如果有，那么一定要调用super.equals()。 &lt;/p&gt;&lt;p&gt;3.4&amp;nbsp; 在equals()函数中谨慎使用instanceof&lt;/p&gt;&lt;p&gt;备注：如果允许派生类和父类进行比较，可能要采用instanceof（getClass()会恒返回false）。注意instanceof类似于is-a语义，需要注意位置，即(子类 instanceof 父类 -&amp;gt; 返回true；反之为false)。&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div&gt;　　三、 &lt;strong&gt;异常处理&lt;/strong&gt;&lt;/div&gt;&lt;p&gt;1.&amp;nbsp; 认识异常流程机制&lt;/p&gt;&lt;p&gt;备注：try区段 -&amp;gt; [catch捕获区段][可选] -&amp;gt; finally终结区段。 &lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;2.&amp;nbsp; 处理异常&lt;/p&gt;&lt;p&gt;如果异常产生却未被捕获，发生异常的线程将中断。处理异常：&lt;/p&gt;&lt;p&gt;a). 捕获并处理它，防止进一步传播。&lt;/p&gt;&lt;p&gt;b). 捕获并抛出一个新的异常给调用端。&lt;/p&gt;&lt;p&gt;备注：应确保新抛出的异常包含原异常相关信息，以保证不丢失重要信息。 &lt;/p&gt;&lt;p&gt;c). 不捕获，任其传播给调用端。&lt;/p&gt;&lt;p&gt;输出错误信息：&lt;/p&gt;&lt;p&gt;a). 日志文件记录曾经发生过的异常&lt;/p&gt;&lt;p&gt;b). 输出异常&lt;/p&gt;&lt;p&gt;输出到标准错误串流：如e.printStackTrace()。 &lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;3.&amp;nbsp; 防止出现异常覆盖&lt;/p&gt;&lt;p&gt;备注：如果在catch或finally区段又抛出了未捕获的异常，新的异常将覆盖try抛出的异常，只有一个异常可被传播到调用段。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;4.&amp;nbsp; throws子句&lt;/p&gt;&lt;p&gt;备注：提供throws子句的用意在于，提醒函数调用者，告知可能发生的异常。编译器会强迫调用端捕捉这些被列出的异常，所以不要再开发周期的最后才添加。&lt;/p&gt;&lt;p&gt;如果覆写对象（某个父类函数）没有抛出任何异常，那么覆写函数因为增加了代码而引发异常，那么你必须在新函数中捕捉异常并处理。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;5.&amp;nbsp; 使用finally避免资源泄漏&lt;/p&gt;&lt;p&gt;备注：finally区段代码无论是否发生异常都将执行，尤其适合维护对象内部状态和清理non-memory资源。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;6.&amp;nbsp; 使用建议：&lt;/p&gt;&lt;p&gt;a). 不要从try区段执行return、break或continue语句离开try区段&lt;/p&gt;&lt;p&gt;备注：如果try区段和finally区段都return 数据，将返回finally区段return的数据。&lt;/p&gt;&lt;p&gt;b). 将try/catch区段置于循环之外&lt;/p&gt;&lt;p&gt;备注：异常对代码性能产生负面影响&lt;/p&gt;&lt;p&gt;c). 不要将异常用于流程控制&lt;/p&gt;&lt;p&gt;d). 在构造函数中抛出异常&lt;/p&gt;&lt;p&gt;e). 抛出异常之前将对象恢复为有效状态&lt;/p&gt;&lt;p&gt;备注：考虑下次执行这段代码时会发生什么事情，代码是否还能正常运行。 &lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;结束&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;预计本系列前几篇文章为《Practical Java》和《Effective Java》的读书笔记，后续内容还在规划当中，也欢迎大家把感兴趣的内容反馈给我作为潜在的系列文章。&lt;br /&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/over140/aggbug/2308492.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/over140/archive/2012/01/04/2308492.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/over140/archive/2011/12/29/2305650.html</id><title type="text">Android开发指南(41) —— Searchable Configuration</title><summary type="text">本章内容为 Android开发者指南的 Framework Topics/Search/Searchable Configuration章节，译为"搜索配置文件"，版本为Android 4.0 r1，翻译来自："呆呆大虾"，欢迎访问他的微博："http://weibo.com/popapa"，再次感谢"呆呆大虾" ！期待你一起参与翻译Android的相关资料，联系我over140@gmail.com。</summary><published>2011-12-29T02:03:00Z</published><updated>2011-12-29T02:03:00Z</updated><author><name>农民伯伯</name><uri>http://www.cnblogs.com/over140/</uri></author><link rel="alternate" href="http://www.cnblogs.com/over140/archive/2011/12/29/2305650.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/over140/archive/2011/12/29/2305650.html"/><content type="html">&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;p&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;前言&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;本章内容为  Android开发者指南的  Framework Topics/Search/Searchable Configuration章节，译为"搜索配置文件"，版本为Android 4.0 r1，翻译来自："呆呆大虾"，欢迎访问他的微博："&lt;a title="http://weibo.com/popapa" href="http://weibo.com/popapa"&gt;http://weibo.com/popapa&lt;/a&gt;"，再次感谢"呆呆大虾" ！期待你一起参与翻译Android的相关资料，联系我over140@gmail.com。 &lt;/p&gt; &lt;p&gt;&lt;/p&gt; &lt;div&gt; &lt;p&gt;&lt;strong style="color: red"&gt;声明&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;欢迎转载，但请保留文章原始出处:)&amp;nbsp;&lt;/p&gt; &lt;p&gt;博客园：&lt;a title="http://www.cnblogs.com" href="http://www.cnblogs.com/"&gt;http://www.cnblogs.com/&lt;/a&gt;&lt;/p&gt;　　　　Android中文翻译组：&lt;a title="http://androidbox.sinaapp.com/" href="http://androidbox.sinaapp.com/"&gt;http://androidbox.sinaapp.com/&lt;/a&gt;&lt;/div&gt;  &lt;p&gt;&lt;/p&gt;&lt;/div&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;strong&gt;&amp;nbsp;&lt;/strong&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;  &lt;p style="text-align:center;" align="center"&gt;&lt;strong&gt;&lt;span style="font-size:16.0pt;font-family:宋体;Times New Roman&amp;quot;;"&gt;搜索配置文件&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="text-align:center" align="center"&gt;&lt;span style="font-family:宋体;"&gt;译者署名：&lt;/span&gt; &lt;span style="font-family:宋体;"&gt;呆呆大虾&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:center" align="center"&gt;&lt;span style="font-family:宋体;"&gt;译者微博：&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt; &lt;a href="http://weibo.com/popapa"&gt;http://weibo.com/popapa&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:center" align="center"&gt;&lt;span style="font-family:宋体;"&gt;版本：&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;Android 4.0 r1&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;span style="font-family:宋体;"&gt;原文&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;a href="http://developer.android.com/guide/topics/search/searchable-config.html"&gt;http://developer.android.com/guide/topics/search/searchable-config.html&lt;/a&gt; &lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p style="text-align:left; layout-grid-mode:char;" align="left"&gt;&lt;strong&gt;&lt;span style="font-family:宋体; color:#7BB026;"&gt;参阅&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;background:white" align="left"&gt;&lt;u&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#CC6600;"&gt;&lt;a href="http://developer.android.com/guide/topics/search/search-dialog.html"&gt;&lt;span style="font-family:宋体;color:#CC6600"&gt;创建搜索界面&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;background:white" align="left"&gt;&lt;u&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#CC6600;"&gt;&lt;a href="http://developer.android.com/guide/topics/search/adding-recent-query-suggestions.html"&gt;&lt;span style="font-family:宋体;color:#CC6600"&gt;添加最近请求建议项&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;background:white" align="left"&gt;&lt;u&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#CC6600;"&gt;&lt;a href="http://developer.android.com/guide/topics/search/adding-custom-suggestions.html"&gt;&lt;span style="font-family:宋体;color:#CC6600"&gt;添加自定义建议项&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p style="margin-left:231.0pt;text-align:left;text-indent:-21.0pt;background:white" align="left"&gt;&lt;u&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#CC6600;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;为了能在&lt;/span&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;Android&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;系统的辅助下（发送搜索请求到&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;activity&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;并提供搜索建议项）实现搜索功能，应用程序必须提供一个&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;XML&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;格式的搜索配置文件。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family: 宋体;"&gt;本文描述了搜索配置文件的语法和使用方式。关于应用程序如何实现搜索特性的详细信息，在开发者指南的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;&lt;a href="http://developer.android.com/guide/topics/search/search-dialog.html"&gt;&lt;span style="font-family:宋体;color:#006699"&gt;创建搜索界面&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;span style="font-family:宋体;"&gt;中进行描述。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;font-variant:small-caps;"&gt;文件位置：&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;res/xml/&lt;em&gt;filename&lt;/em&gt;.xml&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;&lt;br /&gt; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;Android&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;用文件名作为资源&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;ID&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;font-variant:small-caps;"&gt;语法：&lt;/span&gt;&lt;/p&gt;  &lt;div style="border:solid #CCCCCC 1.0pt;padding:7.0pt 7.0pt 7.0pt 7.0pt;background:#FAFAFA; margin-left:21.0pt;margin-right:0cm"&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;&amp;lt;?&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt;xml version&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#008800;"&gt;"1.0"&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt; encoding&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#008800;"&gt;"utf-8"&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;?&amp;gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#000088;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/guide/topics/search/searchable-config.html#searchable-element"&gt;&lt;span style="color:#000088"&gt;searchable&lt;/span&gt;&lt;/a&gt;&lt;/span&gt; &lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;xmlns:android&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"http://schemas.android.com/apk/res/android"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:label&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#008800;"&gt;"&lt;em&gt;string resource&lt;/em&gt;"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:hint&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#008800;"&gt;"&lt;em&gt;string resource&lt;/em&gt;"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchMode&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;["queryRewriteFromData"&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt; | &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"queryRewriteFromText"&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;]&amp;nbsp;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchButtonText&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"&lt;em&gt;string resource&lt;/em&gt;"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:inputType&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"&lt;/span&gt;&lt;em&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/R.attr.html#inputType"&gt;&lt;span style="color:#008800"&gt;inputType&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/em&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:imeOptions&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"&lt;/span&gt;&lt;em&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/R.attr.html#imeOptions"&gt;&lt;span style="color:#008800"&gt;imeOptions&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/em&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSuggestAuthority&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"&lt;em&gt;string&lt;/em&gt;"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSuggestPath&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"&lt;em&gt;string&lt;/em&gt;"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSuggestSelection&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"&lt;em&gt;string&lt;/em&gt;"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSuggestIntentAction&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"&lt;em&gt;string&lt;/em&gt;"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSuggestIntentData&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"&lt;em&gt;string&lt;/em&gt;"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSuggestThreshold&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"&lt;em&gt;int&lt;/em&gt;"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:includeInGlobalSearch&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;["true"&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt; | &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"false"&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;]&amp;nbsp;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSettingsDescription&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"&lt;em&gt;string resource&lt;/em&gt;"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:queryAfterZeroResults&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;["true"&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt; | &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"false"&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;]&amp;nbsp;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:voiceSearchMode&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;["showVoiceSearchButton"&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt; | &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"launchWebSearch"&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt; | &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"launchRecognizer"&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;]&amp;nbsp;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:voiceLanguageModel&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;["free-form"&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt; | &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"web_search"&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;]&amp;nbsp;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:voicePromptText&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"&lt;em&gt;string resource&lt;/em&gt;"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:voiceLanguage&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"&lt;em&gt;string&lt;/em&gt;"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:voiceMaxResults&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"&lt;em&gt;int&lt;/em&gt;"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#000088;"&gt;&amp;gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#000088;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/guide/topics/search/searchable-config.html#actionkey-element"&gt;&lt;span style="color:#000088"&gt;actionkey&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#882288;"&gt;android:keycode&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"&lt;/span&gt;&lt;em&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/view/KeyEvent.html"&gt;&lt;span style="color:#008800"&gt;KEYCODE&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/em&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#882288;"&gt;android:queryActionMsg&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"&lt;em&gt;string&lt;/em&gt;"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#882288;"&gt;android:suggestActionMsg&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"&lt;em&gt;string&lt;/em&gt;"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#882288;"&gt;android:suggestActionMsgColumn&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"&lt;em&gt;string&lt;/em&gt;"&lt;/span&gt; &lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#000088;"&gt;&amp;gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#000088;"&gt;&amp;lt;/searchable&amp;gt;&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;font-variant:small-caps;"&gt;元素：&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#000088;"&gt;&amp;lt;searchable&amp;gt;&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;定义了&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;Android&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;系统为了支持搜索所需的全部搜索配置信息。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;属性&lt;span style="font-variant:small-caps"&gt;：&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:63.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:label&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:84.0pt;text-align:left;" align="left"&gt;&lt;em&gt;&lt;span style="font-family:宋体;"&gt;字符串资源&lt;/span&gt;&lt;/em&gt;&lt;span style="font-family:宋体;"&gt;。（必填项。）应用程序的名称。应该是与&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#333333;"&gt;&lt;a href="http://developer.android.com/guide/topics/manifest/activity-element.html#label"&gt;&lt;span style="color:#006699"&gt;&amp;lt;activity&amp;gt;&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;或&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#333333;"&gt;manifest&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;中&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;&lt;a href="http://developer.android.com/guide/topics/manifest/application-element.html#label"&gt;&lt;span style="color:#006699"&gt;&amp;lt;application&amp;gt;&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;元素的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;android:label&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;属性相一致。仅当&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;android:includeInGlobalSearch&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;设&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;为&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;true&amp;#8221;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;时，用户才能看见本文本标签。这时标签用于标识本应用程序，并作为可搜索项显示在系统的搜索设置菜单中。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:63.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:hint&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:84.0pt;text-align:left;" align="left"&gt;&lt;em&gt;&lt;span style="font-family:宋体;"&gt;字符串资源&lt;/span&gt;&lt;/em&gt;&lt;span style="font-family:宋体;"&gt;。（建议项。）在没有录入文字时，显示在搜索文本框中的文本。它向用户提示了可搜索的内容。为了与其它&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;Android &lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;应用保持一致，应该把&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;android:hint&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;定义的文本写成&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;搜索&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;lt;&lt;/span&gt;&lt;em&gt;&lt;span style="font-family:宋体;"&gt;内容&lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;-&lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style=" font-family:宋体;"&gt;或&lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;-&lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="font-family:宋体;"&gt;产品&lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;gt;&lt;/span&gt;&lt;/em&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;的格式。例如，&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;搜索歌曲和艺术家&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;或&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;搜索&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;YouTube&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:63.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchMode&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:84.0pt;text-align:left;" align="left"&gt;&lt;em&gt;&lt;span style="font-family:宋体;"&gt;关键字&lt;/span&gt;&lt;/em&gt;&lt;span style="font-family:宋体;"&gt;。设置控制搜索显示的其它模式。目前可用的模式定义了自定义建议项获得焦点时搜索文本的改写方式。以下列出了可用的模式：&lt;/span&gt;&lt;/p&gt;  &lt;table style="width:377.25pt;margin-left:89.25pt;border-collapse:collapse;" border="0" cellpadding="0" cellspacing="0" width="503"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td style="border:solid #CCCCCC 1.0pt;   background:#DEE8F1;padding:4.1pt 8.25pt 4.1pt 8.25pt" valign="top"&gt;   &lt;p style="text-align:center;" align="center"&gt;&lt;strong&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;值&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="width:222.1pt;border:solid #CCCCCC 1.0pt;   border-left:none;   background:#DEE8F1;padding:4.1pt 8.25pt 4.1pt 8.25pt" valign="top" width="296"&gt;   &lt;p style="text-align:center;" align="center"&gt;&lt;strong&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;描述&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="border:solid #CCCCCC 1.0pt;border-top:none;padding:4.1pt 8.25pt 4.1pt 8.25pt" valign="top"&gt;   &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;   color:#007000;"&gt;"queryRewriteFromText"&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="width:222.1pt;border-top:none;border-left:   none;border-bottom:solid #CCCCCC 1.0pt;border-right:solid #CCCCCC 1.0pt;padding:4.1pt 8.25pt 4.1pt 8.25pt" valign="top" width="296"&gt;   &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;用&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;   color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_TEXT_1"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_TEXT_1&lt;/span&gt;&lt;/a&gt;&lt;/span&gt; &lt;span style="font-family:宋体;color:#333333;"&gt;列&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;中的值改写查询请求文本。&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="border:solid #CCCCCC 1.0pt;border-top:none;padding:4.1pt 8.25pt 4.1pt 8.25pt" valign="top"&gt;   &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;   color:#007000;"&gt;"queryRewriteFromData"&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="width:222.1pt;border-top:none;border-left:   none;border-bottom:solid #CCCCCC 1.0pt;border-right:solid #CCCCCC 1.0pt;padding:4.1pt 8.25pt 4.1pt 8.25pt" valign="top" width="296"&gt;   &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;用&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;   color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_INTENT_DATA"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_INTENT_DATA&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;列中的值改写查询请求文本。仅当&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;   color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_INTENT_DATA"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_INTENT_DATA&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;中的值符合用户的要求并开始编辑时才会用到，典型的场合是&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;HTTP URI &lt;/span&gt;&lt;span style="   font-family:宋体;"&gt;。&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p style="margin-left:84.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;详情请参阅&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;&lt;a href="http://developer.android.com/guide/topics/search/adding-custom-suggestions.html#RewritingQueryText"&gt;&lt;span style="font-family:宋体;color:#006699"&gt;添加自定义建议项&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;中关于改写请求文本的部分。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:63.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchButtonText&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:84.0pt;text-align:left;" align="left"&gt;&lt;em&gt;&lt;span style="font-family:宋体;"&gt;字符串资源&lt;/span&gt;&lt;/em&gt;&lt;span style="font-family:宋体;"&gt;。显示在执行搜索按钮上的文本。默认情况下，按钮上会显示一个搜索图标（放大镜），这是理想的国际化方案。除非某些时候不是要执行搜索操作（比如&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;Web&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;浏览器中的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;URL&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;请求），否则不应该使用本属性来改变按钮的显示。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:63.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:inputType&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:84.0pt;text-align:left;" align="left"&gt;&lt;em&gt;&lt;span style="font-family:宋体;"&gt;关键字。&lt;/span&gt;&lt;/em&gt;&lt;span style=" font-family:宋体;"&gt;定义了要使用的录入方式（比如软键盘）。大多数搜索都需要能录入任意字符，也就不必用到本属性。本属性可用值的清单请参阅&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/R.attr.html#inputType"&gt;&lt;span style="color:#006699"&gt;inputType&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:63.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:imeOptions&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:84.0pt;text-align:left;" align="left"&gt;&lt;em&gt;&lt;span style="font-family:宋体;"&gt;关键字。&lt;/span&gt;&lt;/em&gt;&lt;span style=" font-family:宋体;"&gt;提供录入方式的其它选项。大多数搜索都需要能录入任意字符，也就不必用到本属性。缺省的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;IME &lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;是&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;actionSearch&amp;#8221;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;（在软键盘上提供&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;搜索&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;按钮并取代回车）。本属性可用值的清单请参阅&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/R.attr.html#imeOptions"&gt;&lt;span style="color:#006699"&gt;imeOptions&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;" align="left"&gt;&lt;strong&gt;&lt;span style="font-family:宋体;"&gt;搜索建议项的属性&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;如果定义了&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;来提供搜索建议项，则需要定义更多的属性来对&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family: 宋体;"&gt;的交互进行配置。当提供自定义建议项时，需要以下&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&amp;lt;searchable&amp;gt;&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;属性：&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:63.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSuggestAuthority&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:84.0pt;text-align:left;" align="left"&gt;&lt;em&gt;&lt;span style="font-family:宋体;"&gt;字符串&lt;/span&gt;&lt;/em&gt;&lt;span style=" font-family:宋体;"&gt;。（提供搜索建议项时需要。）本属性值必须符合&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;Android manifest&lt;/span&gt;&lt;span style="font-family: 宋体;"&gt;文件中&lt;/span&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&amp;lt;provider&amp;gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;元素的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;android:authorities&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;属性所提供的权限。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:63.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSuggestPath&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:84.0pt;text-align:left;" align="left"&gt;&lt;em&gt;&lt;span style="font-family:宋体;"&gt;字符串&lt;/span&gt;&lt;/em&gt;&lt;span style=" font-family:宋体;"&gt;。该路径用作建议项请求&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/net/Uri.html"&gt;&lt;span style="color:#006699"&gt;Uri&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;的组成部分，位于前缀和权限之后，但在标准建议项路径之前。仅当只有一个&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;来提供多种建议项时（比如不同数据类型），才需要用到该属性，并且需要采取必要措施来消除歧义的建议项请求（区分出不同的建议项请求）。&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:63.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSuggestSelection&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:84.0pt;text-align:left;" align="left"&gt;&lt;em&gt;&lt;span style="font-family:宋体;"&gt;字符串&lt;/span&gt;&lt;/em&gt;&lt;span style=" font-family:宋体;"&gt;。该值将作为&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;selection&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;参数传给查询函数。典型的情况是一个数据库&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#333333;"&gt;WHERE&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;语句，并应包含一个问号作为用户录入的实际查询字符的占位符（比如&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;"query=?"&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;）。当然也可以通过在&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;selectionArgs&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;参数中指定任何非空值来触发查询文本的传递（这样就会忽略&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;selection&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;参数）。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:63.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSuggestIntentAction&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:89.25pt;text-align:left;text-indent:-5.25pt;" align="left"&gt;&lt;em&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;字符串。&lt;/span&gt;&lt;/em&gt; &lt;span style="font-family:宋体;color:#333333;"&gt;用户点击自定义搜索建议项时（比如&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;"android.intent.action.VIEW"&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;）默认使用的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#333333;"&gt;intent action&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;。如果未被选中建议项覆盖（通过&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_INTENT_ACTION"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_INTENT_ACTION&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;列），则用户点击建议项时本属性值将被放入&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/content/Intent.html"&gt;&lt;span style="color:#006699"&gt;Intent&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;action&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;部分。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:63.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSuggestIntentData&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:89.25pt;text-align:left;text-indent:-5.25pt;" align="left"&gt;&lt;em&gt;&lt;span style="font-family:宋体;"&gt;字符串。&lt;/span&gt;&lt;/em&gt;&lt;span style="font-family:宋体;"&gt;用户点击自定义搜索建议项时默认使用的&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent data&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;。如果未被选中建议项覆盖（通&lt;span style="color:#333333"&gt;过&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/app/SearchManager.html#SUGGEST_COLUMN_INTENT_DATA"&gt;&lt;span style="color:#006699"&gt;SUGGEST_COLUMN_INTENT_DATA&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;列），则用户点击建议项时本属性值将被放入&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/content/Intent.html"&gt;&lt;span style="color:#006699"&gt;Intent&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;data&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;部分。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:63.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSuggestThreshold&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:89.25pt;text-align:left;text-indent:-5.25pt;" align="left"&gt;&lt;em&gt;&lt;span style="font-family:宋体;"&gt;整数&lt;/span&gt;&lt;/em&gt;&lt;span style="font-family:宋体;"&gt;。请求文本的字符数量至少要大于该数值才会触发建议项的查询。系统只保证不会向&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider &lt;/span&gt;&lt;span style="font-family: 宋体;"&gt;提交任何短于该阈值的查询请求。默认值是&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;0&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;关于以上搜索建议项属性的详情，请参阅开发者指南的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#333333;"&gt;&lt;a href="http://developer.android.com/guide/topics/search/adding-recent-query-suggestions.html"&gt;&lt;span style="font-family:宋体;color:#006699"&gt;添加最近请求建议&lt;span&gt;项&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;和&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#333333;"&gt;&lt;a href="http://developer.android.com/guide/topics/search/adding-custom-suggestions.html"&gt;&lt;span style="font-family:宋体;color:#006699"&gt;添加自定义建议项&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;部分。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;text-indent:21.0pt;" align="left"&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;" align="left"&gt;&lt;strong&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family:宋体;"&gt;快速搜索框&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family:宋体;"&gt;的属性&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;为了让自定义建议项能被用于&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;快速搜索框&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;，需要以下&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&amp;lt;searchable&amp;gt;&lt;/span&gt; &lt;span style="font-family:宋体;"&gt;属性：&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:63.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:includeInGlobalSearch&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:89.25pt;text-align:left;text-indent:-5.25pt;" align="left"&gt;&lt;em&gt;&lt;span style="font-family:宋体;"&gt;布尔值。&lt;/span&gt;&lt;/em&gt;&lt;span style="font-family:宋体;"&gt;（在&lt;/span&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;快速搜索框&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;中提供搜索建议项时需要。）如果建议项需被用于全局访问的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;快速搜索框&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;，则设为&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;true&amp;#8221;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;。用户还是必须先在系统的搜索配置菜单中启用应用程序对应的可搜索项，然后建议项才能出现在&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;快速搜索框&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;中。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:63.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSettingsDescription&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:89.25pt;text-align:left;text-indent:-5.25pt;" align="left"&gt;&lt;em&gt;&lt;span style="font-family:宋体;"&gt;字符串&lt;/span&gt;&lt;/em&gt;&lt;span style="font-family:宋体;"&gt;。为提交给&lt;/span&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;快速搜索框&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;的搜索建议项提供简要描述信息，这些信息将显示在应用程序对应的可搜索项条目中（搜索配置菜单内）。描述信息应该简要描述可搜索的内容。比如：音乐程序可以是&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;艺术家、专辑名和音轨&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;，记事本程序则可以是&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;已保存的记录&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:63.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:queryAfterZeroResults&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:89.25pt;text-align:left;text-indent:-5.25pt;" align="left"&gt;&lt;em&gt;&lt;span style="font-family:宋体;"&gt;布尔值。&lt;/span&gt;&lt;/em&gt;&lt;span style="font-family:宋体;"&gt;如果需要让&lt;/span&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;能够接受搜索请求的超集，则设置为&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;true&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;，这些请求在以前搜索时返回结果为零。比如，如果&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family: 宋体;"&gt;对&lt;/span&gt;&lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;bo&amp;#8221;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;返回&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;0&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;个结果，则应该要搜索&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;bob&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;。如果设为&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;false&amp;#8221;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;，同一个&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;会话&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;中将忽略超集（&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;bob&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;将不会再次发起请求）。不过这只会维持至搜索对话框生命周期结束，如果使用搜索&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;widget&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;则是到&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;activity&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;生命周期结束（当搜索对话框或&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;activity&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;重新被打开时，&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;bo&amp;#8221;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;会再次向&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family: 宋体;"&gt;提交请求）。默认值是&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;false&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;" align="left"&gt;&lt;strong&gt;&lt;span style="font-family:宋体;"&gt;语音搜索的属性&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;为了启用语音搜索功能，需要以下&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&amp;lt;searchable&amp;gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;属性中的一些：&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:63.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:voiceSearchMode&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:89.25pt;text-align:left;text-indent:-5.25pt;" align="left"&gt;&lt;em&gt;&lt;span style="font-family:宋体;"&gt;关键字&lt;/span&gt;&lt;/em&gt;&lt;span style="font-family:宋体;"&gt;。（提供语音搜索功能时需要。）启用语音搜索功能，并同时指定搜索模式。&lt;/span&gt; &lt;span style="font-family:宋体;"&gt;（某些设备可能不支持语音搜索，那这些标记就无效。）可以接受以下模式值：&lt;/span&gt;&lt;/p&gt;  &lt;table style="margin-left:89.25pt;border-collapse:collapse;" border="0" cellpadding="0" cellspacing="0"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td style="width:161.45pt;border:solid #CCCCCC 1.0pt;background:#DEE8F1;padding:4.1pt 8.25pt 4.1pt 8.25pt" valign="top" width="215"&gt;   &lt;p style="text-align:center;" align="center"&gt;&lt;strong&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;值&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="width:225.55pt;border:solid #CCCCCC 1.0pt;   border-left:none;   background:#DEE8F1;padding:4.1pt 8.25pt 4.1pt 8.25pt" valign="top" width="301"&gt;   &lt;p style="text-align:center;" align="center"&gt;&lt;strong&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;描述&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="width:161.45pt;border:solid #CCCCCC 1.0pt;   border-top:none;   padding:4.1pt 8.25pt 4.1pt 8.25pt" valign="top" width="215"&gt;   &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;   color:#007000;"&gt;"showVoiceSearchButton"&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="width:225.55pt;border-top:none;border-left:   none;border-bottom:solid #CCCCCC 1.0pt;border-right:solid #CCCCCC 1.0pt;padding:4.1pt 8.25pt 4.1pt 8.25pt" valign="top" width="301"&gt;   &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;如果设备支持语音搜索，则显示一个语音搜索按钮。如果设置此值，则必须同时设置&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;   color:#007000;"&gt;"launchWebSearch"&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;或&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;   color:#007000;"&gt;"launchRecognizer"&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;（用管道符&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;|&amp;#8221;&lt;/span&gt;&lt;span style="   font-family:宋体;"&gt;分隔）。&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="width:161.45pt;border:solid #CCCCCC 1.0pt;   border-top:none;   padding:4.1pt 8.25pt 4.1pt 8.25pt" valign="top" width="215"&gt;   &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;   color:#007000;"&gt;"launchWebSearch"&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="width:225.55pt;border-top:none;border-left:   none;border-bottom:solid #CCCCCC 1.0pt;border-right:solid #CCCCCC 1.0pt;padding:4.1pt 8.25pt 4.1pt 8.25pt" valign="top" width="301"&gt;   &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;语音搜索按钮让用户直接使用内置的语音&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;web&lt;/span&gt;&lt;span style="   font-family:宋体;"&gt;搜索&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;activity&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;。绝大部分应用程序不需要用到本标记，因为它会使得用户离开提交搜索的当前&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;activity&lt;/span&gt;&lt;span style="   font-family:宋体;"&gt;。&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="width:161.45pt;border:solid #CCCCCC 1.0pt;   border-top:none;   padding:4.1pt 8.25pt 4.1pt 8.25pt" valign="top" width="215"&gt;   &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;   color:#007000;"&gt;"launchRecognizer"&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="width:225.55pt;border-top:none;border-left:   none;border-bottom:solid #CCCCCC 1.0pt;border-right:solid #CCCCCC 1.0pt;padding:4.1pt 8.25pt 4.1pt 8.25pt" valign="top" width="301"&gt;   &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;语音搜索按钮让用户直接使用内置的录音&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;activity&lt;/span&gt;&lt;span style="   font-family:宋体;"&gt;。该&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;activity&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;将会引导用户说话，把语音转译为文本，并把结果作为请求文本提交给搜索&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;activity&lt;/span&gt;&lt;span style="   font-family:宋体;"&gt;，就如同用户在搜索界面录入并点击搜索按钮一样。&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p style="margin-left:63.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:voiceLanguageModel&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:89.25pt;text-align:left;text-indent:-5.25pt;" align="left"&gt;&lt;em&gt;&lt;span style="font-family:宋体;"&gt;关键字&lt;/span&gt;&lt;/em&gt;&lt;span style="font-family:宋体;"&gt;。语音识别系统使用的语言模式。可接受以下值：&lt;/span&gt;&lt;/p&gt;  &lt;table style="width:436.5pt;margin-left:89.25pt;border-collapse:collapse;" border="0" cellpadding="0" cellspacing="0" width="582"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td style="width:92.2pt;border:solid #CCCCCC 1.0pt;background:#DEE8F1;padding:4.1pt 8.25pt 4.1pt 8.25pt" valign="top" width="123"&gt;   &lt;p style="text-align:center;" align="center"&gt;&lt;strong&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;值&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="width:344.3pt;border:solid #CCCCCC 1.0pt;   border-left:none;   background:#DEE8F1;padding:4.1pt 8.25pt 4.1pt 8.25pt" valign="top" width="459"&gt;   &lt;p style="text-align:center;" align="center"&gt;&lt;strong&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;描述&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="border:solid #CCCCCC 1.0pt;border-top:none;padding:4.1pt 8.25pt 4.1pt 8.25pt" valign="top"&gt;   &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;   color:#007000;"&gt;"free_form"&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border-top:none;border-left:none;border-bottom:solid #CCCCCC 1.0pt;   border-right:solid #CCCCCC 1.0pt;   padding:4.1pt 8.25pt 4.1pt 8.25pt" valign="top"&gt;   &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;语音识别使用自由模式（&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;free-form&lt;/span&gt;&lt;span style="   font-family:宋体;"&gt;）。这种模式主要是为英语优化的。&lt;/span&gt; &lt;span style="font-family:宋体;"&gt;这是缺省值。&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="border:solid #CCCCCC 1.0pt;border-top:none;padding:4.1pt 8.25pt 4.1pt 8.25pt" valign="top"&gt;   &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;   color:#007000;"&gt;"web_search"&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border-top:none;border-left:none;border-bottom:solid #CCCCCC 1.0pt;   border-right:solid #CCCCCC 1.0pt;   padding:4.1pt 8.25pt 4.1pt 8.25pt" valign="top"&gt;   &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;语音识别使用&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;web&lt;/span&gt;&lt;span style="   font-family:宋体;"&gt;检索词（&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;web-search-term&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;）模式，用于简短的、类似检索关键词的短语。&lt;/span&gt; &lt;span style="   font-family:宋体;"&gt;该模式可用的语言比上述自由模式&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;free_form&amp;#8221;&lt;/span&gt;&lt;span style="   font-family:宋体;"&gt;多一些。&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p style="margin-left:89.25pt;text-align:left;text-indent:-5.25pt;" align="left"&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;详情请参阅&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/speech/RecognizerIntent.html#EXTRA_LANGUAGE_MODEL"&gt;&lt;span style="color:#006699"&gt;EXTRA_LANGUAGE_MODEL&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:63.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:voicePromptText&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:89.25pt;text-align:left;text-indent:-5.25pt;" align="left"&gt;&lt;em&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;字符串。&lt;/span&gt;&lt;/em&gt; &lt;span style="font-family:宋体;color:#333333;"&gt;显示在语音输入对话框中的其它信息。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:63.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:voiceLanguage&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:89.25pt;text-align:left;text-indent:-5.25pt;" align="left"&gt;&lt;em&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;字符串。&lt;/span&gt;&lt;/em&gt; &lt;span style="font-family:宋体;color:#333333;"&gt;期望的语言，用&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/java/util/Locale.html"&gt;&lt;span style="color:#006699"&gt;Locale&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;中的字符串常量表示（比如&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;de&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#333333;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;表示德语，&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;&amp;#8220;&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体; color:#333333;"&gt;表示法语）。仅当所用语言与&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/java/util/Locale.html#getDefault%28%29"&gt;&lt;span style="color:#006699"&gt;Locale.getDefault()&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;获得的当前值不同时，才需要用到本值。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:63.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:voiceMaxResults&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:89.25pt;text-align:left;text-indent:-5.25pt;" align="left"&gt;&lt;em&gt;&lt;span style="font-family:宋体;"&gt;整数。&lt;/span&gt;&lt;/em&gt; &lt;span style=" font-family:宋体;"&gt;指定最多返回几个结果，其中的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;最佳&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;结果将用&lt;span style="color:#333333"&gt;于&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/content/Intent.html#ACTION_SEARCH"&gt;&lt;span style="color:#006699"&gt;ACTION_SEARCH&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt; intent&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;的主要请求文本。本值必须大于等于&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;1&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;。&lt;span style="color:#333333"&gt;用&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/speech/RecognizerIntent.html#EXTRA_RESULTS"&gt;&lt;span style="color:#006699"&gt;EXTRA_RESULTS&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;可以从&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;获取这些结果。如果未提供本值，则语音识别程序将会确定返回结果的数量。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#000088;"&gt;&amp;lt;actionkey&amp;gt;&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;为搜索&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;指定一个设备上的按键及动作。在触摸屏幕按钮时，根据当前搜索请求或当前获得焦点的建议项，搜索&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;将能执行设定的操作。比如，联系人应用程序在按下通话按钮时能够执行启动电话的搜索&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;，与当前获得焦点的联系人建议项进行通话。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;并不是每台设备都支持全部的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;键，也不是所有键都允许用这种方式覆盖。比如，&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;&amp;#8220;Home&amp;#8221;&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;键就不行，它必须保证能返回初始屏幕。还必须确保不要指定为录入搜索请求时可能会用到的键。本属性基本上仅限于指定为通话按钮和菜单按钮。请记住&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;键通常不是很显眼，因此不应该把它作为核心功能来提供给用户。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;必须定义&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;android:keycode&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;来指定键，并至少要同时指定另外三个属性中的一个，才能完成搜索&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;的定义。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:42.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体; font-variant:small-caps;"&gt;属性：&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:63.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:keycode&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:89.25pt;text-align:left;text-indent:-5.25pt;" align="left"&gt;&lt;em&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;字符串。&lt;/span&gt;&lt;/em&gt;&lt;span style=" font-family:宋体; color:#333333;"&gt;（必填项）&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/view/KeyEvent.html"&gt;&lt;span style="color:#006699"&gt;KeyEvent&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;中定义的键值，代表所响应的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;键（比如&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt;&amp;#8220;&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;KEYCODE_CALL&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#333333;"&gt;&amp;#8221;&lt;/span&gt;&lt;span style="font-family:宋体; color:#333333;"&gt;）。&lt;/span&gt; &lt;span style="font-family:宋体;"&gt;本值将附在&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/content/Intent.html#ACTION_SEARCH"&gt;&lt;span style="color:#006699"&gt;ACTION_SEARCH&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt; intent&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;中传递给搜索&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;activity&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;。用&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/content/Intent.html#getIntExtra%28java.lang.String,%20int%29"&gt;&lt;span style="color:#006699"&gt;getIntExtra(SearchManager.ACTION_KEY)&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;可以获取本值。并非所有键都可用于搜索&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;，多数键是用于录入键盘或者系统功能键的。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:63.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:queryActionMsg&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:89.25pt;text-align:left;text-indent:-5.25pt;" align="left"&gt;&lt;em&gt;&lt;span style="font-family:宋体;"&gt;字符串。&lt;/span&gt;&lt;/em&gt; &lt;span style=" font-family:宋体;"&gt;在用户录入搜索请求文本时，按下&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;键所附带的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;信息。本值将附在&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/content/Intent.html#ACTION_SEARCH"&gt;&lt;span style="color:#006699"&gt;ACTION_SEARCH&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#333333;"&gt; i&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;ntent&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;中传递给搜索&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;activity&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;。用&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/content/Intent.html#getStringExtra%28java.lang.String%29"&gt;&lt;span style="color:#006699"&gt;getStringExtra(SearchManager.ACTION_MSG)&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;color:#333333;"&gt;可以获取本值。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:63.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:suggestActionMsg&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:89.25pt;text-align:left;text-indent:-5.25pt;" align="left"&gt;&lt;em&gt;&lt;span style="font-family:宋体;"&gt;字符串。&lt;/span&gt;&lt;/em&gt; &lt;span style=" font-family:宋体;"&gt;在建议项获得焦点时，按下&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;键所附带的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;信息。本值将附在系统传递给搜索&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;activity &lt;/span&gt;&lt;span style="font-family:宋体;"&gt;的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;中（使用预先定义的建议项对应的&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;）。用&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/content/Intent.html#getStringExtra%28java.lang.String%29"&gt;&lt;span style="color:#006699"&gt;getStringExtra(SearchManager.ACTION_MSG)&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;可以获取本值。仅当所有建议项都支持本&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action &lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;键时才能使用本属性。如果不是所有建议项都能处理同一个&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;键，必须换用下面的&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;android:suggestActionMsgColumn&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;属性。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:63.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:suggestActionMsgColumn&lt;/span&gt; &lt;/p&gt;  &lt;p style="margin-left:89.25pt;text-align:left;text-indent:-5.25pt;" align="left"&gt;&lt;em&gt;&lt;span style="font-family:宋体;"&gt;字符串。&lt;/span&gt;&lt;/em&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt; content provider&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;中的数据列名，用于提供本&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;键对应的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;信息，在建议项获得焦点时，按下&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;键将发送该&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;信息。本属性可以控制每个建议项各自的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action &lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;键，&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;中的每一条数据都有自己的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action &lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;信息。本属性可以取代&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;android:suggestActionMsg&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;属性，因为它为所有建议项指定相同的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;信息。&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:89.25pt;text-align:left;text-indent:-5.25pt;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;首先，必须在&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;content provider&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;中为每个建议项定义数据列，用于提供&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;信息，然后在本属性中给出列名。系统会用本属性给出的字符串在建议项&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;cursor&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;中查找，选中&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;信息列，并读取&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;Cursor &lt;/span&gt;&lt;span style="font-family:宋体;"&gt;中的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;信息。本值将附在系统传递给搜索&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;activity &lt;/span&gt;&lt;span style="font-family:宋体;"&gt;的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;intent&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;中（使用预先定义的建议项对应的&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;）。用&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;&lt;a href="http://developer.android.com/reference/android/content/Intent.html#getStringExtra%28java.lang.String%29"&gt;&lt;span style="color:#006699"&gt;getStringExtra(SearchManager.ACTION_MSG)&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;可以获取本值。如果选定建议项对应的数据不存在，&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;action&lt;/span&gt;&lt;span style=" font-family:宋体;"&gt;键将被忽略。&lt;/span&gt;&lt;/p&gt;  &lt;p style="text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;font-variant:small-caps;"&gt;示例：&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-left:21.0pt;text-align:left;" align="left"&gt;&lt;span style="font-family:宋体;"&gt;保存于&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#007000;"&gt;res/xml/searchable.xml&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;的&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;XML&lt;/span&gt;&lt;span style="font-family:宋体;"&gt;文件：&lt;/span&gt;&lt;/p&gt;  &lt;div style="border:solid #CCCCCC 1.0pt;padding:7.0pt 7.0pt 7.0pt 7.0pt;background:#FAFAFA; margin-left:42.0pt;margin-right:0cm"&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;&amp;lt;?&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt;xml version&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#008800;"&gt;"1.0"&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:black;"&gt; encoding&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#008800;"&gt;"utf-8"&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;?&amp;gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#000088;"&gt;&amp;lt;searchable&lt;/span&gt; &lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;xmlns:android&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"http://schemas.android.com/apk/res/android"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:label&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#008800;"&gt;"@string/search_label"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:hint&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#008800;"&gt;"@string/search_hint"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSuggestAuthority&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"dictionary"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSuggestIntentAction&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"android.intent.action.VIEW"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:includeInGlobalSearch&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"true"&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#882288;"&gt;android:searchSettingsDescription&lt;/span&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#666600;"&gt;=&lt;/span&gt;&lt;span style=" font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#008800;"&gt;"@string/settings_description"&lt;/span&gt; &lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;;color:#000088;"&gt;&amp;gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;  &lt;p style="margin-left:0cm; text-align:left; layout-grid-mode:char;background:#FAFAFA;border: none;padding:0cm;" align="left"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:#000088;"&gt;&amp;lt;/searchable&amp;gt;&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;p&gt;&lt;/p&gt;  &lt;/div&gt;&lt;img src="http://www.cnblogs.com/over140/aggbug/2305650.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/over140/archive/2011/12/29/2305650.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry></feed>
