我一直在努力从网络视图上传文件。我尝试了许多解决方案,但都没有奏效。
http://m0s-programming.blogspot.tw/2011/02/file-upload-in-through-webview-on.html
Android WebView文件上载
当我单击按钮时,filechooser在chrome等桌面浏览器中工作正常,浏览器会打开一个对话框,我可以在其中选择要上载的文件。
当我用手机测试程序并单击选择文件时,对话框没有反应
有人能帮我吗?谢谢
请参阅本文档:
https://infeeds.com/d/CODEmgks/20475/upload-image-file-gallery-or-camera-webv
public boolean onShowFileChooser(
WebView webView, ValueCallback<Uri[]> filePathCallback,
WebChromeClient.FileChooserParams fileChooserParams){
if(mUMA != null){
mUMA.onReceiveValue(null);
}
mUMA = filePathCallback;
Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
if(takePictureIntent.resolveActivity(MainActivity.this.getPackageManager()) != null){
File photoFile = null;
try{
photoFile = createImageFile();
takePictureIntent.putExtra("PhotoPath", mCM);
}catch(IOException ex){
Log.e(TAG, "Image file creation failed", ex);
}
if(photoFile != null){
mCM = "file:" + photoFile.getAbsolutePath();
takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(photoFile));
}else{
takePictureIntent = null;
}
}
Intent contentSelectionIntent = new Intent(Intent.ACTION_GET_CONTENT);
contentSelectionIntent.addCategory(Intent.CATEGORY_OPENABLE);
contentSelectionIntent.setType("image/*");
Intent[] intentArray;
if(takePictureIntent != null){
intentArray = new Intent[]{takePictureIntent};
}else{
intentArray = new Intent[0];
}
Intent chooserIntent = new Intent(Intent.ACTION_CHOOSER);
chooserIntent.putExtra(Intent.EXTRA_INTENT, contentSelectionIntent);
chooserIntent.putExtra(Intent.EXTRA_TITLE, "Image Chooser");
chooserIntent.putExtra(Intent.EXTRA_INITIAL_INTENTS, intentArray);
startActivityForResult(chooserIntent, FCR);
return true;
}
创建图像文件函数,如上面代码中所述,我们需要它来创建要上载的新临时文件。
private File createImageFile() throws IOException{
@SuppressLint("SimpleDateFormat") String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date());
String imageFileName = "img_"+timeStamp+"_";
File storageDir = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES);
return File.createTempFile(imageFileName,".jpg",storageDir);
}
我已经处理了文件选择器,它完美地上传了文件, <罢工> 问题出在相机上。一旦我试图上传相机照片,它崩溃了。据我所知,这是因为URI。 a)文件选择器:内容://media/external/images/1234 b)摄像:文件:///mnt/sdcard/pic.jpg <罢工> 它现在崩溃了,因为在尝试上传“content://media/external/images/1234”时出现了nu
问题内容: 我正在尝试从webview使用android构建Web项目。我有一个类型为file的输入字段,`<input type=”file” `可让用户将文件上传到服务器,但是在android webview上似乎不起作用,当我点击浏览按钮时,什么也没发生。 编译器 activity_comp.xml comp.html (在资产文件夹中) 任何帮助,将不胜感激。 问题答案: Riad的答案指
问题内容: 我正在做一个phonegap应用。当我尝试如下所示的输入字段时,它按预期显示了iPhone中的日期选择器,但没有显示我给定的占位符。我在SO中发现了相同的问题,但没有解决方案。 问题答案: 可能不合适……但这对我有所帮助。
我已经尝试打开一个FileChooser-Dialog和工作,但我需要一个没有FileChooser的解决方案。应该使用“path”-变量的路径。我知道这将是一个巨大的安全漏洞,但可能有解决办法吗?也许可以通过JavaScript更改die输入值?也许有图书馆? PS:不是为了做任何非法的事情-该公司的应用程序正在生成个人资料图像,他们需要通过一个现有的不可更改的输入类型文件上传。 提前谢了。
问题内容: 假设我们有这个网站https://www.coinichiwa.com/,其中有一个BET AMOUNT输入框。它的html是: 我需要在其中添加一些价值。这是我的代码: 但是,既没有将其值设置为“ 0.00000005”,也没有打印输入的。 我不知道怎么了。你能建议吗?为什么不起作用? 问题答案: 您需要先输入文字: 至于第二个问题- 这是一个,您输入的值将保留在属性内,而不是文本内
问题内容: 我有一个查询和一个表。该表的名称为OrderT,而查询的名称为SearchQ。查询在那里,所以我可以有一个子表单来显示表单上的搜索结果。尽管我的查询如果缺少任何字段中的任何数据,也不会在表上显示一行。例如,如果我有CustomerName,OrderNumber和OrderDueDate字段,而我填写了CustomerName,OrderNumber,但将OrderDueDate留为空