Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Vladiuss
0 / 0 / 0
Регистрация: 24.05.2013
Сообщений: 37
#1

Подскажите что я делаю не так - Android

24.05.2013, 14:59. Просмотров 535. Ответов 5
Метки нет (Все метки)

При нажатии на кнопку должно появляются окно для распознавания речи. Создал класс в нем все описал, код рабочий. Создаю экземпляр этого класса в другом классе но ничего не получается при нажатии приложении закрывается.

Вот класс для управления голосом.

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
import java.util.ArrayList;
 
import android.app.Activity;
import android.content.Intent;
import android.speech.RecognizerIntent;
import android.view.View;
import android.widget.Toast;
 
public class StartVoiceControl extends Activity{
        private static final int REQUEST_CODE = 1234;
     
        public void speakButtonClicked(View v)
        {
            startVoiceRecognitionActivity();
        }
     
        /**
         * Fire an intent to start the voice recognition activity.
         */
        private void startVoiceRecognitionActivity()
        {
            Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
            intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,
                    RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
            intent.putExtra(RecognizerIntent.EXTRA_PROMPT, "Voice recognition...");
            startActivityForResult(intent, REQUEST_CODE);
        }
     
 
        @Override
        protected void onActivityResult(int requestCode, int resultCode, Intent data)
        {
            if (requestCode == REQUEST_CODE && resultCode == RESULT_OK)
            {
                // Populate the wordsList with the String values the recognition engine thought it heard
                ArrayList<String> matches = data.getStringArrayListExtra(
                        RecognizerIntent.EXTRA_RESULTS);
 
                String fisrtResult = matches.get(0);
                
                Toast toast = Toast.makeText(getApplicationContext(), 
                        fisrtResult, Toast.LENGTH_SHORT); 
                        toast.show(); 
            }
            super.onActivityResult(requestCode, resultCode, data);
        }
}
В другом классе пишу:
Java
1
2
StartVoiceControl voiceControl = new StartVoiceControl();
voiceControl.speakButtonClicked(v);
Подскажите что не так? Я новичок так что сильно не пинайте. Думал что когда кнопку нажимаешь ошибка лезет, проверил когда нажимаешь кнопку все ок. Ругается именно когда я создаю экземпляр класса и выполняю его метод.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.05.2013, 14:59     Подскажите что я делаю не так
Посмотрите здесь:

Android Что я делаю не так. Совсем нубский вoпрос.
Android Что тут не так?
Что не так? Android
Android Подскажите что я делаю не так. Разработка Виджета
Android Как отсортировать List? Подскажите что делаю не так
Android Что я неправильно делаю при реализации поиска?
Подскажите что почитать по динамической 2D Графике в Android Android
Android Сделать так, что бы прикосновения фиксировались только в определенной зоне
Android Нет возможности создать Android-проект в Eclipse. Что не так сделал?
Android Не воспринимается русский и украинский язык в эмуляторе. Что не так?
Что не так с Marshmallow? Android
Android Password что не так?

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
24.05.2013, 17:55     Подскажите что я делаю не так #2
http://developer.android.com/guide/c...ctivities.html
читай
Vladiuss
0 / 0 / 0
Регистрация: 24.05.2013
Сообщений: 37
24.05.2013, 18:24  [ТС]     Подскажите что я делаю не так #3
Если бы я ещё так хорошо знал английский что бы все это прочитать.
Good-bad man
254 / 232 / 17
Регистрация: 31.10.2010
Сообщений: 504
24.05.2013, 19:06     Подскажите что я делаю не так #4
А почему бы не делать всё это в той же активити, в которой вы пытаетесь делать так:
Java
1
2
StartVoiceControl voiceControl = new StartVoiceControl();
voiceControl.speakButtonClicked(v);
? Насколько я помню, нельзя создавать экземпляр активити напрямую, можно только вызывать его с помощью Intent.
Vladiuss
0 / 0 / 0
Регистрация: 24.05.2013
Сообщений: 37
24.05.2013, 22:18  [ТС]     Подскажите что я делаю не так #5
Цитата Сообщение от Good-bad man Посмотреть сообщение
А почему бы не делать всё это в той же активити, в которой вы пытаетесь делать так:
Java
1
2
StartVoiceControl voiceControl = new StartVoiceControl();
voiceControl.speakButtonClicked(v);
? Насколько я помню, нельзя создавать экземпляр активити напрямую, можно только вызывать его с помощью Intent.
Изначально я так и сделал, нажимаю на кнопочку выскакивает окно распознавания голоса после распознавания ничего не происходит, onActivityResult возвращает resultCode = 0.
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
24.05.2013, 22:26     Подскажите что я делаю не так #6
Цитата Сообщение от Vladiuss Посмотреть сообщение
Изначально я так и сделал, нажимаю на кнопочку выскакивает окно распознавания голоса после распознавания ничего не происходит, onActivityResult возвращает resultCode = 0.
и причем здесь одно ко второму?
Yandex
Объявления
24.05.2013, 22:26     Подскажите что я делаю не так
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru