사용 CMUSphinx 라이브러리, 버튼의 필요를 발동 할 당신은 그것을 이름을 지정할 수 있습니다 아래는 전체 소스 코드
1을 찾을 수 있습니다 링크에서 이름을 사용하여 당신은 인식 모듈을 트리거 할 수 있습니다) 그것은 오프라인 모드에서 작동 2) 당신은 당신이 그의 이름을 부를 때 그것은
private static final String KEYPHRASE = "ok computer";
private static final int PERMISSIONS_REQUEST_RECORD_AUDIO = 1;
private SpeechRecognizer recognizer;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
captions = new HashMap<String, Integer>();
captions.put(KWS_SEARCH, R.string.kws_caption);
captions.put(MENU_SEARCH, R.string.menu_caption);
setContentView(R.layout.activity_maini);
}
private void runRecognizerSetup() {
// Recognizer initialization is a time-consuming and it involves IO,
// so we execute it in async task
new AsyncTask<Void, Void, Exception>() {
@Override
protected Exception doInBackground(Void... params) {
try {
Assets assets = new Assets(MainActivity.this);
File assetDir = assets.syncAssets();
setupRecognizer(assetDir);
} catch (IOException e) {
return e;
}
return null;
}
@Override
protected void onPostExecute(Exception result) {
if (result != null) {
((TextView) findViewById(R.id.caption_text))
.setText("Failed to init recognizer " + result);
} else {
switchSearch(KWS_SEARCH);
}
}
}.execute();
}
@Override
public void onRequestPermissionsResult(int requestCode,
String[] permissions, int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
if (requestCode == PERMISSIONS_REQUEST_RECORD_AUDIO) {
if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
runRecognizerSetup();
} else {
finish();
}
}
}
public void onResult(Hypothesis hypothesis) {
((TextView) findViewById(R.id.result_text)).setText("");
if (hypothesis != null) {
String text = hypothesis.getHypstr();
makeText(getApplicationContext(), text, Toast.LENGTH_SHORT).show();
}}
http://stackoverflow.com/questions/10182893/can-i-keep을 청취를 시작합니다) 3 그것을 이름을 지정할 수 있습니다 - the-speech-recognizer-listening-indefinitely –
http://stackoverflow.com/questions/14940657/android-speech-recognitio n-as-a-service-on-android-4-1-4-2/14950616 # 14950616 –