语音识别算法源代码Android实现语音识别的完整代码

Android 实现语音识别的完整代码,
方法/步骤1苹果的iPhone有语音识别用的是Google的技术,做为Google力推的Android 自然会将其核心技术往Android系统里面植入,并结合google的云端技术将其发扬光大。所以GoogleVoiceRecognition在Android的实现就变得极其轻松。语音识别,借助于云端技术可以识别用户的语音输入,包括语音控制等技术,下面我们将利用Google提供的Api实现这一功能。功能点为:通过用户语音将用户输入的语音识别出来,并打印在列表上。功能界面如下:步骤阅读2用户通过点击speak按钮显示界面:步骤阅读3用户说完话后,将提交到云端搜索步骤阅读4在云端搜索完成后,返回打印数据:步骤阅读5*Copyright(C)2008TheAndroidOpenSourceProject**LicensedundertheApacheLicense,Version2.0(the\"License\");*youmaynotusethisfileexceptincompliancewiththeLicense.*YoumayobtainacopyoftheLicenseat**http://www.apache.org/licenses/LICENSE-2.0**Unlessrequiredbyapplicablelaworagreedtoinwriting,software*distributedundertheLicenseisdistributedonan\"ASIS\"BASIS,*WITHOUTWARRANTIESORCONDITIONSOFANYKIND,eitherexpressorimplied.*SeetheLicenseforthespecificlanguagegoverningpermissionsand*limitationsundertheLicense.*/packagecom.example.android.apis.app;importcom.example.android.apis.R;importandroid.app.Activity;importandroid.content.Intent;importandroid.content.pm.PackageManager;importandroid.content.pm.ResolveInfo;importandroid.os.Bundle;importandroid.speech.RecognizerIntent;importandroid.view.View;importandroid.view.View.OnClickListener;importandroid.widget.ArrayAdapter;importandroid.widget.Button;importandroid.widget.ListView;importjava.util.ArrayList;importjava.util.List;/***SamplecodethatinvokesthespeechrecognitionintentAPI.*/publicclassVoiceRecognitionextendsActivityimplementsOnClickListener{privatestaticfinalintVOICE_RECOGNITION_REQUEST_CODE=1234;privateListViewmList;/***Calledwiththeactivityisfirstcreated.*/@OverridepublicvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);//InflateourUIfromitsXMLlayoutdescription.setContentView(R.layout.voice_recognition);//GetdisplayitemsforlaterinteractionButtonspeakButton=(Button)findViewById(R.id.btn_speak);mList=(ListView)findViewById(R.id.list);//ChecktoseeifarecognitionactivityispresentPackageManagerpm=getPackageManager();Listactivities=pm.queryIntentActivities(newIntent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH),0);if(activities.size()!=0){speakButton.setOnClickListener(this);}else{speakButton.setEnabled(false);speakButton.setText(\"Recognizernotpresent\");}}/***Handletheclickonthestartrecognitionbutton.*/publicvoidonClick(Viewv){if(v.getId()==R.id.btn_speak){startVoiceRecognitionActivity();}}/***Fireanintenttostartthespeechrecognitionactivity.*/privatevoidstartVoiceRecognitionActivity(){Intentintent=newIntent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);intent.putExtra(RecognizerIntent.EXTRA_PROMPT,\"Speechrecognitiondemo\");startActivityForResult(intent,VOICE_RECOGNITION_REQUEST_CODE);}/***Handletheresultsfromtherecognitionactivity.*/@OverrideprotectedvoidonActivityResult(intrequestCode,intresultCode,Intentdata){if(requestCode==VOICE_RECOGNITION_REQUEST_CODE&&resultCode==RESULT_OK){//FillthelistviewwiththestringstherecognizerthoughtitcouldhaveheardArrayListmatches=data.getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS);mList.setAdapter(newArrayAdapter(this,android.R.layout.simple_list_item_1,matches));}super.onActivityResult(requestCode,resultCode,data);}}END

本文来自投稿,不代表长河网立场,转载请注明出处: http://www.changhe99.com/a/WArpDbArXM.html

(0)

相关推荐