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

Вывод смс в textView - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Чтение и запись внешних файлов http://www.cyberforum.ru/android-dev/thread1778495.html
Добрый вечер! Интересует вопрос, как реализовать в приложении через Android studio чтение и запись текстовых файлов, которые находятся не в каталоге приложения.
Программирование Android Запретить смену ориентации экрана пока идет загрузка У меня есть такой код, где активити создается из двух фрагментов и потом запускает поток в котором идет сетевой запрос. В ответ приходит JSON я выделяю информацию и загружаю ее в TextView во фрагменты и в фон картинку(через Handler), но проблема в том, что если пользователь повернет экран а картинка еще не загрузилась - сетевой запрос не отработал то приложение падает с 07-09 20:12:58.256... http://www.cyberforum.ru/android-dev/thread1778425.html
Программирование Android Нужно ли пользоваться префиксами m и s для именования переменных или это устарело?
Добрый вечер всем, подскажите пожалуйста, используете ли вы префиксы m и s для переменных/полей класса? Дело в том что у андроида написано что надо : Follow Field Naming Conventions Non-public, non-static field names start with m. Static field names start with s. Other fields start with a lower case letter. Public static final fields (constants) are...
Как подключиться с базе данных FireBird из Android Программирование Android
Всем привет, ребят кто нить сталкивался с такой задачей?. Смысл в том, что есть база данных Firebird .FBD, необходимо написать приложение под Android которое буде подключатся к данной базе и считывать информацию, вопрос - как подключиться с данной базе. Может кто то уже сделал сие чудо). В гугле ничего толкового не нашел. Может кто знает, заранее спасибо.
Программирование Android Как определить на какой номер звонят если в телефоне 2 сим карты? http://www.cyberforum.ru/android-dev/thread1778355.html
Добрый день. Подскажите, пожалуйста, есть ли возможность в бродкаст ресивере отлавливать номер телефона, на который звонят при условии, что в телефоне две симки? То есть узнать на какую из симок поступил звонок.
Программирование Android Не получается открыть диалоговое окно, созданное в отдельном классе Всем привет! Учусь программировать под андроид, еще почти ничего не понимаю. Пробую урок отсюда. Пытаюсь вызвать диалоговое окно по нажатию кнопки "домой". Закомментированный диалог "покормите кота" успешно работает. А вот диалог, созданный в классе не открывается. Просто затемняется экран и всё. Из примера урока я попытался убрать всё "лишнее", может чего нужное зацепил? Заметил, что в... подробнее

Показать сообщение отдельно
OlegJV
102 / 102 / 29
Регистрация: 13.03.2016
Сообщений: 472
11.07.2016, 13:16
Ну я так понял, что текст СМС благополучно перехвачен в ресивере. Далее все зависит от того, запущена активити или нет. Если запущена, то в ресивере формируем интент:

Кликните здесь для просмотра всего текста
Java
1
2
3
4
Intent intent = new Intent(INTENT_NAME);    // В INTENT_NAME желательно использовать имя пакета
                                            // чтоб обеспечить уникальность
intent.putExtra("data", smsText);       // Втыкаем в интент текст смски
context.sendBroadcast(intent);  // и отсылаем его по системе...


А теперь ловим его в активити, например делаем там метод receive(), который запускаем, например, в onCreate:

Кликните здесь для просмотра всего текста
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
private void receive(boolean b) {
        if (b) { // в onCreate пишем receive(true), чтоб зарегистрировать ресивер.
            IntentFilter filter = new IntentFilter();
            filter.addAction(INTENT_NAME);
 
            br = new BroadcastReceiver() {
 
                @Override
                public void onReceive(Context context, Intent intent) {
                    if (intent.getAction().equals(INTENT_NAME)) {
                        String smsText = intent.getStringExtra("data");
                        // делаем что нам надо с полученным текстом
                    }
                }
            };
            try {
                registerReceiver(br, filter);
            }
            catch (Exception e) {
            }
        }
        else { //
            try {
                unregisterReceiver(br); //в onPause пишем receive(false), чтоб убить ресивер.
            }
            catch (Exception e) {
            }
        }
    }


Обработчики ошибок на усмотрение...

Добавлено через 17 минут
Если же активити не запущена, еще проще - запускаем ее:

Java
1
2
3
    Intent intent = new Intent(context, MyActivity.class);
    intent.putExtra("data", smsText);
    context.startActivity(intent);
А в onCreate активити ловим:

Java
1
String smsText = getIntent.getStringExtra("data");
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru