如果用戶通過鍵盤或通過SearchView(AppCompat)的語音識別功能輸入文本,我正在開發一個Android應用程序並希望區分搜索活動(獲取意圖)。我如何區分這兩者?如何區分文本搜索和語音搜索?
0
A
回答
0
要讓搜索通過語音獲得填充,用戶必須點擊一個按鈕才能說話?
0
在我的應用程序中,我通過檢查SearchManager.USER_QUERY
的值是否爲null來確定這一點。如果是這樣,那意味着用戶沒有鍵入任何文本來啓動搜索,這意味着他們使用語音搜索。我不喜歡這樣寫道:
@Override
protected void onNewIntent(Intent intent) {
if (intent.getAction().equals(Intent.ACTION_SEARCH)) {
//if this was a voice search
if (intent.getStringExtra(SearchManager.USER_QUERY) == null) {
//do stuff with voice search query...
} else {
//perform search with text query
}
}
}
該解決方案一直感到哈克給我,但它是我能想出這樣做的唯一途徑,它一直致力於完美自從我來實現它。
相關問題
- 1. iOS:語音到搜索框的文本
- 2. 如何區分正常搜索和全局搜索
- 3. 如何創建搜索引擎,自動搜索語音識別
- 4. 如何區分搜索查詢和URL?
- 5. SQLite不區分重音的搜索
- 6. MongoDB文本搜索和詞搜索的多個搜索詞
- 7. Azure搜索 - 語音分析儀問題
- 8. Android - Google語音搜索
- 9. 語音搜索在iPhone SDK?
- 10. windows phone 7語音搜索
- 11. 如何實現語音搜索到SearchView
- 12. 搜索分級文本
- 13. Elasticseach搜索部分文本
- 14. 傳遞上下文的語音搜索
- 15. 語音識別進行文件搜索
- 16. 短語搜索和高亮搜索:在Marklogic中搜索
- 17. 分面搜索和Lucene搜索之間的區別?
- 18. 如何搜索文本
- 19. 搜索文本
- 20. 搜索文本
- 21. PDF文本搜索和分庫
- 22. 語義UI搜索和本地搜索不起作用
- 23. Gradle:如何過濾和搜索文本?
- 24. 文本搜索 - 突出顯示搜索短語
- 25. 搜索視圖語音搜索不顯示
- 26. 搜索在分區視圖
- 27. 如何創建nokogiri不區分大小寫的文本*搜索?
- 28. 如何使用搜索:搜索API在txt文件中搜索?
- 29. msbuild和搜索文本
- 30. 在Lucene中使用變音符號進行索引和搜索法語文本
是的。用戶單擊工具欄(AppCompat)中的麥克風圖標,而不是鍵入文本,然後彈出系統語音重新創建對話框。 –
所以當你開始搜索Activity時,你可以包含intent.putExtra(EXTRA_MESSAGE,message); startActivity(intent); 作爲啓動搜索活動的活動的標識符。 – pooja
並在搜索活動中以這種方式檢查Intent intent = getIntent(); String message = intent.getStringExtra(MyActivity.EXTRA_MESSAGE);你可以比較字符串。它不需要是字符串值,可以是不同的數據類型 - 無論適合你 – pooja