美文网首页
2022-05-21

2022-05-21

作者: 一直在路上66 | 来源:发表于2022-05-21 15:13 被阅读0次

H5获取系统相册照片方案

1.方法一:H5使用input标签获取

H5 需要选取系统相册的一个图片,可以用 H5 标签,打开相机,打开相册等,来选取手机的资源文件,在标签绑定回调方法,会接到系统给你回调的文件资源。代码如下

<div  style="height: 200px;width: 600px;background-color: aliceblue;">
           <input  style="height: 200px;width: 600px;font-size: 20px;" id="file" type="file" accept="image/png,image/gif,image/jpg" name="file" />
</div>

document.querySelector('#file').onchange = function (){
              if(this.files.length){
                let file = this.files[0];
                        console.log('读取文件');
                let reader = new FileReader();
                //新建 FileReader 对象
                reader.onload = function(){
                  // 当 FileReader 读取文件时候,读取的结果会放在 FileReader.result 属性中
                  document.querySelector('#img').src = this.result;
                  document.querySelector('#text').innerHTML = this.result;
                };
                // 设置以什么方式读取文件,这里以base64方式
                reader.readAsDataURL(file);
             }
       }

2.使用NSURLProtocol 拦截 重新返回数据

UIWebView 也是可以被 NSURLProtocol 拦截的,但 WKWebView 不可以。(因为 WKWebView 是基于 WebKit,并不走 C socket。

3. base64通过bridge传递数据

通过 Base64 的编码来解决 H5Image 标签显示图片的问题,定义好bridge 把图片二进制的一个字节转成一个字符,但是如果图片过大,产生的字符串很长,会导致 H5 和 Natvie 传输很慢,会让页面有卡死的现象。

4.通过 App 本地开启 Server 服务

本地开启server H5加载ios本地图片资源

本地开启Server服务 方案已经试验可以读取

这个方案已经测试 可以读取沙盒里的图片

<div style="width: 300px;height: 300px;"> <img  style="width: 300px;height: 300px;" src="http://localhost:9999/Documents/csop/0.jpg"></div>

let webServer = GCDWebServer()
webServer.addGETHandler(forBasePath: "/", directoryPath: NSHomeDirectory(), indexFilename: nil, cacheAge: 3600, allowRangeRequests: true)
webServer.start(withPort: 9999, bonjourName: "GCD Web Server")
 LLog("Visit \(webServer.serverURL) in your web browser")

相关文章

  • 戒定慧·《感恩日志》重启第08

    2022-05-21(周六) 戒定慧·《感恩日志》重启第08天 【08:21】 01、感恩:昨晚“四宝”床头读书、...

  • “掱”怎么读,“嫑”是啥意思?

    “掱”怎么读,“嫑”是啥意思?这几个有趣的汉字,你认识几个? 2022-05-21 09:42 《万姓统谱》:“上...

  • 约练收获

    中原焦点团队 坚持分享1406天 2022-05-21 如果来访者来咨询是因为他人的行为没有满足自己的期待,或...

  • 和谐才是人间大道

    大伟哥 找到北文社 2022-05-21 06:33 发表于山西 找到北的家人,周末愉快!刚刚忙完,继续今晚分享,...

  • 家庭分享会 | 第三期:Excel小技巧

    时间:2022-05-21主题:Excel小技巧参与人:Smile、古德文、好丽友发起人:古德文 目的: 不仅仅是...

  • 饺面店的第九十三天:感动😹

    2022-05-21 昨天520,没开店,但也是大起大落、滑铁卢的一天,不过一切都过去了,今天还是继续开店吧 ...

  • 最近

    2022-05-21 最近一直在忙,虽然事情是自己的,怎么安排是自由的,但事情在,就真正的轻松时刻。没有真正的休息...

  • 0201教练|活出自信人生

    2022-05-21 北京 晴天早上一大早出门跑步,为了完成闻思修目标108km,目标达成,太了不起了,以前都不敢...

  • 2022-05-21

    2022-05-21坚持分享第1329天 昨天有多少人在热热闹闹地过节?我不知道520到底是个什么节,只看到送花的...

  • 人的一生只要有足够用的财富,就应该去追求与财富无关的东西

    人的一生只要有足够用的财富,就应该去追求与财富无关的东西 2022-05-21 记得有一个和一个朋友聊天,我就说,...

网友评论

      本文标题:2022-05-21

      本文链接:https://www.haomeiwen.com/subject/ukpcprtx.html