网站首页技术博客

解决安卓H5不支持图片多选问题​

洞天水月2021-03-12 14:29:282200人次阅读
摘要Android 环境下H5不支持同时选择多图上传。客户端通过图片上传接口wx.uploadImage将图片上传到企业微信服务器,服务端通过素材管理,获取临时素材接口再将图片下载到开发者自己的服务器,将图片路径返回给客户端。这里需要注意,在PC端微信开发工具进行测试时获取到的图片在企业微信服务器的server_id是固定的同一个值,这个值是不能有效通过服务端获取到图片的,这里的测试需要在真机上进行测试。

Android 环境下H5不支持同时选择多图上传

项目背景:

项目在企业微信下,可以用企业微信的jssdk

解决方案1:通过base64形式上传

利用企业微信的wx.chooseImage选择图片,利用wx.getLocalImgData获取图片的base64编码进行上传

参考企业微信文档:拍照或从手机相册中选图接口

这里需要注意:wx.getLocalImgData此接口仅在 iOS WKWebview 下提供,用于兼容 iOS WKWebview 不支持 localId 直接显示图片的问题。要求IOS版本为2.4.6及以上

也就是说安卓用不了,需要自己去获取图片的base64。

解决方案2(推荐方案):通过临时素材管理来上传图片

客户端通过图片上传接口wx.uploadImage将图片上传到企业微信服务器,服务端通过素材管理,获取临时素材接口再将图片下载到开发者自己的服务器,将图片路径返回给客户端

参考企业微信文档

客户端:上传图片接口

服务端:获取临时素材

这里需要注意,在PC端微信开发工具进行测试时获取到的图片在企业微信服务器的server_id是固定的同一个值,这个值是不能有效通过服务端获取到图片的,这里的测试需要在真机上进行测试。


文章评论