Tee seuraavasta Android-sovelluksestasi hyvä kuuntelija

Kirjoitin viime viikolla viestin siitä, kuinka helppoa on lisätä teksti puheeksi -ominaisuutta Android-sovelluksiin. Se on helppoa, koska Googlen puhesovellusliittymä tekee kaiken raskaan nostamisen meille. Mutta sovellusliittymä ei pysähdy puhumaan tekstiä ääneen - sen avulla voit myös puhua laitteelle ja kääntää sitten nämä äänikomennot tekstiksi, jota sovellus voi käyttää.

Tämä opetusohjelma osoittaa, kuinka lisätä äänentunnistus seuraavaan Android-sovellukseen. Voit seurata tai ladata koko projektin ja tuoda sen suoraan Eclipseen.

1. Luo uusi Android-projekti Eclipse-sovellukseen. Kohdista Android 2.2 tai uudempi.

2. Muokkaa / res / layout-hakemistossa aktiviteetti_main.xml-tiedostoa, jotta se sisältää tekstinäkymän ja kuvapainikkeen.

 activity_main.xml 

3. Avaa / src-kansiossa MainActivity.java. Luovan ohituksen pitäisi näyttää tutulta; se vain johtoon painike.

 MainActivity.java-paketti com.authorwjf.talk2me; tuo java.util.ArrayList; tuo android.app.Activity; tuo android.content.Intent; tuo android.os.Bundle; Tuo android.speech.RecognizerIntent; Tuo android.view.View; Tuo android.view.View.OnClickListener; tuo android.widget.TextView; tuo android.widget.Toast; julkinen luokka MainActivity laajentaa aktiviteettityökaluja OnClickListener {suojattu staattinen lopullinen int REQUEST_OK = 1; @Ohota suojattu tyhjä onCreate (Bundle savedInstanceState) {super.onCreate (savedInstanceState); setContentView (R.layout.activity_main); findViewById (R.id.button1) .setOnClickListener (tämä); }} 

4. Napsautuksen käsittelijä vastaa äänioikeuden ampumisesta.
 @Kuljetaan julkinen tyhjä onClick (Näytä v) {Intent i = uusi tarkoitus (RecognizerIntent.ACTION_RECOGNIZE_SPEECH); i.putExtra (RecognizerIntent.EXTRA_LANGUAGE_MODEL, "en-US"); kokeile {startActivityForResult (i, REQUEST_OK); } catch (poikkeus e) {Toast.makeText (tämä, "Virhe alustettaessa puhetta tekstimoottorille.", Toast.LENGTH_LONG) .show (); }} 

5. Kun aikomus soittaa takaisin, näytämme tekstitetyn tekstin.

 @On ohjattu suojattu tyhjä onActivityResult (int requestCode, int tulosCode, Intent data) {super.onActivityResult (requestCode, resultCode, data); if (requestCode == REQUEST_OK && resultCode == RESULT_OK) {ArrayList thingsYouSaid = data.getStringArrayListExtra (RecognizerIntent.EXTRA_RESULTS); ((TextView) findViewById (R.id.text1)). SetText (thingsYouSaid.get (0)); }} 

Lataa tuloksena oleva APK Android-laitteeseesi USB-kaapelilla ja kokeile sitä.



Jos laitteessasi ei ole JellyBean-ohjelmaa, tarvitset Internet-yhteyden, jotta äänitulo toimisi. Jos laitteessasi on JellyBean, voit siirtyä Asetukset | Kieli ja syöttö | Äänihaku ja lataa offline-puheentunnistuspaketti.

© Copyright 2021 | mobilegn.com