在NavigationBarTablet.java类setSearchMode方法中判断是否有语音模块,若有则显示,没有则不显示。
privateResolveInfo getResolveInfo() {
Intent intent =createVoiceSearchIntent();
ResolveInfo ri = mContext.getPackageManager().
resolveActivity(intent,PackageManager.MATCH_DEFAULT_ONLY);
return ri;
}
protectedIntent createVoiceSearchIntent() {
return newIntent(RecognizerIntent.ACTION_WEB_SEARCH);
}
通过getResolveInfo()返回值是否为空判断语音模块是否可用,null(不可)用;!=null(可用)