Android アプリケーションで Webview を使用して HTML フォームを表示したいと考えています。ユーザーが送信ボタンを押すと、名前と値のペアがプログラムに送り返されます。どうすればいいですか?
私は他の同様の質問を見てきましたが、具体的にこれを行う方法を教えてくれる回答はありません。
私は必要なものを見つけました。フォーム html で action='FORM" を設定すると、次のようにアクションをインターセプトできます。
public void onLoadResource (WebView view, String url){
int index = url.indexOf("FORM?");
if (index != -1){
String d = URLDecoder.decode(url.substring(index+5));
}
}
名前と値のペアは文字列 d にあります。
WebView 内での Javascript インターフェイスの使用を調べます。Android デベロッパー ガイドのこのエリアを参照してください。基本的に、Javascript インターフェイスを使用してページからデバイスに通信し、送信ボタンが押されたときに WebView アクティビティに通知して、その値を送信できるようにする必要があります。