zoukankan      html  css  js  c++  java
  • Android特色开发(2):语音识别

    参考书籍:《Android应用开发揭秘》第9章

    Android特色开发之语音识别:

            语音识别技术在手机上应用得相当广泛,我们日常最频繁的沟通方式是语音,在手机应用中,大部分是通过硬件手动输入,目前这依然是主要与手机互动的方式。

            Android语音识别按钮

    Android中主要通过RecognizerIntent来实现语音识别,它主要包括一些常量来表示语音的模式等,如表所示。

    RecognizerIntent包括的常量

    这里我们只需要通过Intent来传递一个动作以及一些属性,然后通过startActivityForResult来开始语音,代码如下:

         Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);

         intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,RecognizerIntent.LANGUAGE_

         MODEL_FREE_FORM);

         intent.putExtra(RecognizerIntent.EXTRA_PROMPT,"开始语音");

         startActivityForResult(intent, VOICE_RECOGNITION_REQUEST_CODE);

    当然,如果找不到设置,就会抛出异常ActivityNotFoundException,所以我们需要捕捉这个异常。当然,另外需要实现onActivityResult方法,当语音结束时,会触发来获得语音的字符序列。

    下面通过一个例子来学习语音识别,当我们点击“开始使用语音识别”按钮时,开始语音,然后在onActivityResult方法中取得结果并显示出来,运行效果如图9-2所示。由于在模拟器上没有设备,所以显示了ActivityNotFoundException异常,当我们在真机上测试、开始语音时,如图9-3所示,语音结束后取出的字符序列如图9-4所示。

    图9-2ActivityNotFoundException异常    图9-3 开始语音                                    图9-4  获取的字符序列

    具体代码下载链接:http://www.apkbus.com/android-117062-1-1.html

    喜欢开源,乐意分享的大神们,欢迎加入QQ群:176507146,你值得拥有哦!

    作者:快乐出发0220 ;Android群:151319601 ; Linux群:96394158 ;转载请注明出处 http://klcf0220.cnblogs.com/ !!!
  • 相关阅读:
    蓝牙4.0BLE cc2540 cc2541 ios OAD课程(空中固件升级)[原版的,多图]
    ASP.NET文件上传和下载
    onethink和phpwind共享
    折返(Reentrancy)VS线程安全(Thread safety)
    使用更清晰DebugLog开发和调试工具
    MySql分析算法作品索引(马上,只是说说而已B-tree)
    使用shell命令分析统计日志
    刷牙LeetCode思考
    Cocos3d-x 发布第一版
    SSH连接Linux的Server超时
  • 原文地址:https://www.cnblogs.com/klcf0220/p/3088798.html
Copyright © 2011-2022 走看看