首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Android开发笔记(一百五十二)H5通过WebView上传图片

    上一篇文章介绍了WebView与JS之间的数据交互,其实就是把字符串传来传去,这对文本格式的信息传输来说倒还凑合,倘若要传输图片信息就不管用了。所以,要想让h5网页支持从手机上传图片,还得另外想办法,当然各版本的Android系统也都提供了相应的解决办法。在Android 4.*系统上面,开发者可以重写WebChromeClient的openFileChooser函数;在Android 5.0以上的系统,开发者可以重写WebChromeClient的onShowFileChooser函数。话虽如此,可实际编码的时候,会发现并不容易,因为不但要兼容各种版本的安卓系统,而且要考虑不同操作方式下面的处理步骤。 首先是Android不同系统的适配问题,对于4.*版本要重写openFileChooser方法,对于5.0以上版本要重写onShowFileChooser方法。另外注意二者的回调方式也不一样,4.*的回调参数类型是ValueCallback<Uri>,而5.0以上的回调参数类型是ValueCallback<Uri[]>,因此要声明两个回调参数变量,分别用来保存二者各自的回调信息。相关代码如下所示:

    03

    微信H5+小程序登录 用户隐私保护指引设置

    为了分辨用户,开发者将在获取你的明示同意后,收集你的微信昵称、头像。 为了显示距离,开发者将在获取你的明示同意后,收集你的位置信息。 开发者收集你的地址,用于获取位置信息。 开发者收集你的发票信息,用于维护消费功能。 为了用户互动,开发者将在获取你的明示同意后,收集你的微信运动步数。 为了通过语音与其他用户交流互动,开发者将在获取你的明示同意后,访问你的麦克风。 开发者收集你选中的照片或视频信息,用于提前上传减少上传时间。 为了上传图片或者视频,开发者将在获取你的明示同意后,访问你的摄像头。 为了登录或者注册,开发者将在获取你的明示同意后,收集你的手机号。 开发者使用你的通讯录(仅写入)权限,用于方便用户联系信息。 开发者收集你的设备信息,用于保障你正常使用网络服务。 开发者收集你的身份证号码,用于实名认证后才能继续使用的相关网络服务。 开发者收集你的订单信息,用于方便获取订单信息。 开发者收集你的发布内容,用于用户互动。 开发者收集你的所关注账号,用于用户互动。 开发者收集你的操作日志,用于运营维护。 为了保存图片或者上传图片,开发者将在获取你的明示同意后,使用你的相册(仅写入)权限。 为了用户互动,开发者将在获取你的明示同意后,收集你的车牌号。 开发者访问你的蓝牙,用于设备连接。 开发者使用你的日历(仅写入)权限,用于用户日历日程提醒。 开发者收集你的邮箱,用于在必要时和用户联系。 开发者收集你选中的文件,用于提前上传减少上传时间。

    02
    领券