Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Delphian
0 / 0 / 0
Регистрация: 14.08.2012
Сообщений: 138
1

Webview + threads получение сообщений

03.01.2017, 17:43. Просмотров 195. Ответов 0
Метки нет (Все метки)

Всех с Новым годом и добрый день!

Есть следующая ситуация:

Имеется основной фрагмент из которого запускается фрагмент с Webview. Сам Webview может работать только в главном потоке, но с API 19 разработчики сделали возможность запускать задачи в Webview в своём собственном потоке (WebView.evaluateJavascript), но этот поток мы фактически не можем контролировать. Если окно с фрагментом, в котором находится Webview на переднем плане, то всё работает как часы, если же я нажимаю кнопку back, то WebView также работает, хоть и фрагмент уже уничтожен. Но проблема в том, что мне надо знать, что происходит в WebView, даже если окно закрыто.

Я пытался делать Callback, работать с Handler и то и другое не работает после удаления фрагмента, в котором находится Webview, хотя сам WebView продолжает выполнять задачи.

Как можно сообщать основному фрагменту, что происходит в WebView. Всё, что у нас есть это JavascriptInterface, который получает сообщения, но также работает в потоке WebView?

Добавлено через 4 часа 39 минут
Сделал в основном фрагменте следующий метод:
Java
1
2
3
4
5
6
7
8
9
10
private static TextView mStatus;
 
 public static void setStatus(final String status){
         mStatus.post(new Runnable() {
            @Override
            public void run() {
                mStatus.setText(status);
            }
        });
    }
Затем использую этот метод в потоке Webview, всё работает, однако, не очень нравится, что пришлось сделать TextView статичным. Возможно, будут иные идеи?

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.01.2017, 17:43
Ответы с готовыми решениями:

WebView. Получение исходного кода. Зависание
final WebView browser = (WebView) findViewById(R.id.webView); ...

Получение сообщений от сервера без запроса
Среди существующих тем не нашёл ответа на свой вопрос, поэтому решил задать...

WebView
У меня есть лист меню, как сделать так что бы при нажатии на первый объект так...

WebView
Добрый день! Мне нужно выполнить действие после полной загрузки страницы в...

Webview
Всем привет.У меня вопросище. Или я так привык к шарпику, что разобраться...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.01.2017, 17:43

WebView - Height
Добрый вечер. Вот такая пробела. Когда я передаю информацию в WebView он...

Замена WebView
Добрый вечер. Ваша помощь нужна очень. Чем можно заменить WebView (просто как...

WebView in Fragment
Как использовать WebView во фрагменте? Возвращаются слои в зависимости от...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

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