• 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/ !!!
  • 相关阅读:
    BZOJ 1578: [Usaco2009 Feb]Stock Market 股票市场( 背包dp )
    BZOJ 3315: [Usaco2013 Nov]Pogo-Cow( dp )
    BZOJ 3477: [Usaco2014 Mar]Sabotage( 二分答案 )
    BZOJ 2427: [HAOI2010]软件安装( dp )
    BZOJ 3211: 花神游历各国( 线段树 )
    POJ 2528 线段树 + 离散化
    POJ 1151 Atlantis 线段树+离散化+扫描线
    POJ1177 Picture 线段树+离散化+扫描线
    BZOJ1016: [JSOI2008]最小生成树计数
    POJ2104 K-th Number 划分树 模板题啊
  • 原文地址:https://www.cnblogs.com/klcf0220/p/3088798.html
Copyright © 2020-2023  润新知