android使用Webview上传图片

package com.example.webview;

import java.io.File;

import android.net.Uri;
import android.os.Bundle;
import android.os.Environment;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.Intent;
import android.webkit.ValueCallback;
import android.webkit.WebChromeClient;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Toast;

public class MainActivity extends Activity {
    ValueCallback<Uri> callback;
    private WebView wv;

@SuppressLint("SetJavaScriptEnabled")
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        wv = (WebView) findViewById(R.id.wv);
        wv.loadUrl("http://101.200.142.201/Login/index?redirect_uri=http%3A%2F%2F101.200.142.201%2F");
        wv.getSettings().setJavaScriptEnabled(true);
        wv.setWebChromeClient(new WebChromeClient() {
            @SuppressWarnings("unused")
            public void openFileChooser(ValueCallback<Uri> uploadMsg,
                    String acceptType, String capture) {

callback = uploadMsg;

Intent picture = new Intent(
                        Intent.ACTION_PICK,
                        android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
                startActivityForResult(picture, 1);

}
        });
        wv.setWebViewClient(new WebViewClient() {

public boolean shouldOverrideUrlLoading(WebView view, String url) {
                wv.loadUrl(url);
                return true;
            }

});
    }

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        // TODO Auto-generated method stub
        Uri uri = data.getData();
        if (uri != null && callback != null) {

callback.onReceiveValue(uri);
        }
        super.onActivityResult(requestCode, resultCode, data);
    }

}

时间: 2024-10-15 23:09:11

android使用Webview上传图片的相关文章

Android网页WebView图片文件上传的问题

在安卓下,webview上传图片点击是没用的,需要自己写一下. 网上关于这个的很多,基本都是抄来抄去,没什么用的. 这个日期比较新,而且能用 http://blog.csdn.net/djcken/article/details/46379929#comments 就是自定义实现 WebChromeClient 然后重写  openFileChooser  方法,获取 ValueCallback<Uri> valueCallback 当然,要注意不同版本的区别.,但5.0+的项目,就不能用了.

Android一组WebView的随机,顺序,倒序加载

写了个应用,实现了一组WebView的顺序,倒序,和随机加载.之中使用了延时,为什么要使用呢?请看下图: package com.zms.csdngo; import android.content.Context; import android.content.Intent; import android.net.ConnectivityManager; import android.net.NetworkInfo; import android.net.wifi.WifiManager; i

Android的WebView通过JS调用java代码

做项目时候会遇到我们用WebView 打开一个web,希望这个web可以调用自己的一些方法,比如我们在进一个web页面,然后当我们点击web上的某个按钮时,希望能判断当前手机端是否已经登录,如果未登录,那么就会跳转到登录页面(登陆页面是另一个Activity).这个时候,一个简单的做法就是在按钮动作事件的js上调用java的方法,从而起到判断是否登录,并决定是否跳转到另一个页面. Google的WebView为我们提供了 addJavascriptInterface(Object obj, St

Android调用WebView

mWebView.setWebViewClient(new WebViewClient(){                           public boolean shouldOverrideUrlLoading(WebView view, String url) {                               view.loadUrl(url);                               return true;                  

Android中WebView开发汇总

1 去掉WebView的白色背景 2 WebView的超时处理 3 WebView加载网络PDF资源 4 图片自适应WebView大小(铺满WebView) 5 WebView利用UserAgent传递SESSIONID 6 监听WebView滑动到底部 7 WebView长按后调用文字复制功能 8 Android硬件加速以及WebView的onPause,onResume,OnDestroy 9 WebView不能加载Twitter的问题 10 WebView加载本地SD卡上的图片 11 We

Android中webView的基础使用(一)

WebView是View的一个子类,可以让你在activity中显示网页. 可以在布局文件中写入WebView:比如下面这个写了一个填满整个屏幕的WebView: 1 <?xml version="1.0" encoding="utf-8"?> 2 <WebView xmlns:android="http://schemas.android.com/apk/res/android" 3 android:id="@+id

Android之 -WebView实现离线缓存阅读

前言 本篇博客要实现的是一个离线下载和离线阅读的功能,这是很多阅读类app都常见的一个功能,典型的应用就是网易新闻.什么是离线下载?其实这个概念是比较模糊,是离线之后下载呢,还是下载之后离线,但稍微有点脑子的人都知道没有网络之后怎么下载呢?所以离线下载这个功能是”在有网络的情况下,把资源下载到本地“,离线阅读就是”在没有网络或者网络不好的时候,阅读本地好缓存的文章资源“.这样就很清楚我们要的这两个具体的功能需求了. 实现思路 小巫这里提供两个实现思路,一个就是自己写逻辑,一个是通过WebView

Android项目---webView

之前用webView的时候,只知道它可以加载出html页面,竟然不知道,它也可以与js进行交互. WebView是一个网络视图,能加载显示网页,可以将它看作一个浏览器.它使用WebKit渲染引擎加载显示网页 在Andriod中很多控件都有两种方法得到,一种是在java文件中实例化:一种是在布局文件中声明 第一种方法的步骤:1.在要Activity中实例化WebView组件:WebView webView = new WebView(this);2.调用WebView的loadUrl()方法,设置

Android 中Webview 自适应屏幕

随笔 - 478  文章 - 3  评论 - 113 Android 中Webview 自适应屏幕 webview中右下角的缩放按钮能不能去掉 settings.setDisplayZoomControls(false); //隐藏webview缩放按钮 让Webview加载的页面居中显示有我知道的几种方法 第一种方法: WebSettings settings = webView.getSettings(); settings.setLayoutAlgorithm(LayoutAlgorith