Webview Android d'entrée de type de fichier
J'essaie de construire un projet web à l'aide d'android, à partir de webview. J'ai un champ de saisie de type de fichier <input type="file" >
pour permettre à l'utilisateur de télécharger des fichiers sur le serveur, mais il semble ne pas fonctionner sur android webview, quand je tape sur le bouton parcourir, rien ne se passe.
Comp.java
package com.gururaju.bbmp;
import android.app.Activity;
import android.os.Bundle;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.webkit.WebChromeClient;
public class Comp extends Activity {
WebView comp;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_comp);
WebView myWebView = (WebView) findViewById(R.id.comp);
myWebView.setWebChromeClient(new WebChromeClient());
myWebView.loadUrl("file:///android_asset/comp.html");
}
}
activity_comp.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<WebView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/comp"
>
</WebView>
</LinearLayout>
comp.html (dans le dossier assets)
<!DOCTYPE html>
<html lang="en">
<head>
<link rel="stylesheet" type="text/css" href="comp.css">
<meta charset="UTF-8">
<title></title>
</head>
<body>
<h2 align="center">Post your Complaints here</h2>
<form enctype="multipart/form-data" action="" name="complaints" method="POST">
<input class="title" type="text" name="title" placeholder="Enter the Complaint Title" /><br />
<div class="spacer-welcome"></div>
<textarea name="desc" class="desc" placeholder="Your complaint description here..."></textarea><br />
<div class="spacer-welcome1"></div>
<input id="center" type="file" name="image" ><br />
<input class="upload" type="submit" name="submit" value="Submit" >
</form>
</body>
</html>
Toute aide serait appréciée.
OriginalL'auteur Gururaju Hiddenx | 2015-01-25
Vous devez vous connecter pour publier un commentaire.
La réponse par Riad de points dans la bonne direction, mais que seul le rappel n'est pas assez pour le mettre en œuvre.
Il y a, au total, quatre caché méthodes de l'API que vous avez à mettre en œuvre. Leur utilisation dépend de la version d'Android. Ces méthodes sont:
Vous pouvez utiliser la bibliothèque qui fait toutes ces choses pour vous:
https://github.com/delight-im/Android-AdvancedWebView
Alternativement, vous pouvez prendre un coup d'oeil au code source pour voir comment c'est fait:
https://github.com/delight-im/Android-AdvancedWebView/blob/master/Source/src/im/delight/android/webview/AdvancedWebView.java
OriginalL'auteur caw
Webview classe seul ne prend pas en charge le téléchargement de fichiers sur facebook. Vous devez utiliser à la fois web chrome client et webview client de gérer le fichier de téléchargement sur votre application android comme indiqué ci-dessous. Afficher plus de détails et un travail de démonstration
OriginalL'auteur Daniel Nyamasyo
Essayer de la mise en œuvre de la
file Chooser
méthode comme ceci, comme mentionné dans l'article en lien fourni à la fin:Voir Les Détails Ici
OriginalL'auteur Riad