2012-02-27 2 views
1

Я работаю над приложением, в котором мы предоставляем пользователю возможность вернуться к веб-страницам, которые ранее просматривал пользователь.Как повторно отправлять данные POST при использовании метода WebView.goBack()?

Проблема возникает, когда пользователь переходит к странице, содержащей данные POST.

Я не знаю, как обнаружить, что на странице, загруженной в WebView, были данные POST, чтобы приложение могло запросить диалог подтверждения, если он хочет повторно отправить данные POST или нет.

Я видел, как это происходит в браузерах андроида [Родной браузер Skyfire &]

Заранее спасибо ...

ответ

2

После нескольких дней исследований я создал обходной путь, чтобы избавиться от этой ситуации.

Я установил флаг, когда вызывается WebView.goback().

В моем onProgressChanged() метод проверить, если URL подгружается матчи с URL, который должен содержать POST DATA, то я называю WebView.reload(), я установил свой флаг ложь, и я также переопределить onFormResubmission метод WebViewClient следующим образом:

@Override 
public void onFormResubmission (WebView view, Message dontResend,Message resend){ 
    resend.sendToTarget(); 
} 

Для получения более подробной информации, посетите: http://mytechead.wordpress.com/2012/03/08/resubmit-post-data-in-a-webview/

Смежные вопросы