首页
学习
活动
专区
圈层
工具
发布

Android适配使用webview加载后图片显示过大的问题

最近在开发过程中,需要用webview控件来展示文章的详情页面,流程是通过请求后台数据,然后用控件加载,而后台返回的文章详情页面是直接网页端使用的,并没有对移动端进行适配,导致webview加载后文章详情展示的图片过大...下面来看看解决方案: webview的基本使用流程这里我就不重复说明了,本篇针对的是文章详情加载完成后出现的情况,这里我们使用的方法是:通过js脚本,重置img标签中图片的宽度和高度。...使用步骤: 1、此方法需要使用js,所以webview设置属性中一定要添加下面这句,不然无效。...view, String url) { super.onPageFinished(view, url); //重置webview中img标签的图片大小...小编整理了一份Android电子书籍,需要的童鞋关注公众号回复:"e_books" 即可获取哦! [在这里插入图片描述] 欢迎关注公众号(longxuanzhigu),获得更多福利、精彩内容哦!

3K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    项目需求讨论 - WebView下拍照及图片选择功能

    ,就是上传图片的按钮,当然按了这个按钮之后,就会出现二种选择: 1....其实这种在WebView配合下实现这类功能的文章很多很多,但是大多数都是上传一大段代码,然后让大家自己看,千篇一律,所以本文主要是写的完整的思路。 ? 正文: ?...但是在给赋值的时候我遇到过不同的情况: 当在Android这边拍照或者进入图库选完照片后,把图片信息给了网页端后,标签的onchange监听到了图片选择好了,网页端直接把图片上传到服务器并传回来一个地址...Android端: ? 2.1 WebChromeClient 因为Android端访问网页大部分使用的是WebView,所以我们这里还是用WebView来说明。...所以我们这里就要讲二大块: 用户怎么跳到自己想要的界面(相机 or 图库) 用户在自己想要的界面选择好了图片后 (拍好了照片 or 在图库选择好了图片),如何获取相关图片的Uri。

    2.6K20

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

    所以,要想让h5网页支持从手机上传图片,还得另外想办法,当然各版本的Android系统也都提供了相应的解决办法。在Android 4....,既要支持从手机相册中挑选已有的图片,也要支持现场拍照并即时上传拍摄好的照片。...如此一来,就不能仅仅从相册选择文件,而要弹出一个列表对话框,好让用户决定是从相册上传图片,还是当场拍照当场上传。...先在对话框中选择从相册上传,成功上传图片后的h5页面如下面的左图所示;重新点击上传按钮,这次选择使用相机拍照,并把照片成功上传后的h5页面如下面的右图所示: ? ?...先在对话框中选择从相册上传,成功上传图片后的h5页面如下面的左图所示;重新点击上传按钮,这次选择使用相机拍照,并把照片成功上传后的h5页面如下面的右图所示: ? ?

    1.7K30

    H5与原生混合开发总结

    可以先看看android-4-4-webview-file-chooser-not-opening, 而因为我不是直接调用图库选择,而是先开启一个BottomSheetDialog来选择是通过相机还是图库取图...那么来说说如何在上预览,以及如何将这个路径的图片作为文件上传。 下面是选完图片后我们将图片路径回调到JS的方法。...注意到上面的new File([""], imgFilePath, {type:"image/*"}),这么使用会导致上传到服务器的图片大小为0kb,为啥呢?...思考了很久,发现自己一直困在JS如何通过一个本地路径建立File并上传的思维当中,于是找前端和后台的小伙伴交流,最终确定的方案是:选择图片后先将图片编码成Base64字符串再注入到JS处理,JS端收到数据后进行图片数据绑定...,尤其是使用相机直接拍照取图的情况,一张图片可能会有3~10M,直接编码为图片本身会比较耗时,而编码出来的字符串会存在于内存中,因此很有可能会导致Android端出现内存溢出的情况,因此这里可以考虑先压缩后编码

    1.8K20

    如何使用云开发进行图片上传

    前言 云开发,相信大家都不陌生,在我们的日常开发中,总少不了需要把图片进行上传的应用场景。 本文将介绍如何使用云开发进行图片上传并部署到云开发静态网站托管。...sign=48af9e388a00be3ae30935faac144305&t=1593065217] Body部分 示例用了一个input用于上传file(设置好accept),最后写两个div分别用于上传按钮与预览图片...uploadFile API上传图片到云储存 function upload(){ app .uploadFile({ // 云端路径 cloudPath: document.getElementById...API获取图片下载地址 ......,更多的使用小技巧可查看GitHub仓库 本文示例介绍如何使用云开发上传图片至云储存,更多的使用还可以使用云开发拓展能力去进行图像安全审核、图像标签、图像处理等。

    3.7K30

    Android NDK 开发 — 从 Assets 文件夹加载图片并上传纹理

    在 OpenGL 开发中,我们要渲染一张图片,通常先是得到一张图片对应的 Bitmap ,然后将该 Bitmap 作为纹理上传到 OpenGL 中。...在 Android 中有封装好的 GLUtils 类的 texImage2D 方法供我们调用。...---- 接下来我们会通过 Android NDK 开发中去渲染一张图片,步骤还是如上,从图像解析到纹理上传,不同的是我们将会解析 Assets 文件夹中的图片,而不是一张已经保存在手机 SDCard...unsigned char *fileData = (unsigned char *) AAsset_getBuffer(pathAsset); 9 // stb_image 的方法,从内存中加载图片...看到上面那两个 API 基本就稳了,再配合 stb_image 介绍过的方法,stbi_load_from_memory 从内存中加载图片的像素数据,最后就是 glTexImage2D 方法实现纹理上传

    1.9K30

    如何使用FormData上传压缩裁剪后的图片Blob对象

    在前端页面,我们通常会遇到需要用户上传图片的操作,可能还会在前端进行图片编辑的操作(比如头像的选区裁剪),然后如果图片过大的话,我们还会对图片进行压缩。...这些功能我们通常通过Canvas来进行,最后使用Canvas API函数toDataURL来得到图片的Base64字符串,然后当我们要上传到后台的时候,会面临2种选择: 直接将图片的Base64字符串Post...到后端进行处理和保存 在前端将Base64字符串转换成二进制的Blob对象形式,再使用常规的文件上传形式(即FormData)来将其上传到后端 第一种方式对前端来说比较简单,主要的处理逻辑在后端。...FormData上传压缩裁剪后的图片Blob对象 使用的不同框架或自己的逻辑代码的原因,对上传的文件名做了强制的后缀名检查,会发生报错导致上传失败,遇到这种情况,请记得使用上面的方式加上第三个参数,这样问题应该就能迎刃而解了。

    4.2K30

    WebView 的 input 上传照片的兼容问题

    问题 前几天接到的一个需求,是关于第三方理财产品的 H5 上传照片问题。...对方说他们的新的需求,需要接入方配合上传资产照片的需求,测试之后发现我们这边的 app 端,IOS 端上传没有问题,而 Android 端则点击没有任何反应。...解决问题 因为 Android 的版本碎片问题,很多版本的 WebView 都对唤起函数有不同的支持。...在系统相机或者相关 app 中一顿操作之后,当返回 app 的时候,我们在onActivityResult()中将选择好的图片通过ValueCallback的onReceiveValue方法返回给 WebView...附上代码: 1.首先是重写各个版本的WebChromeClient的支持 webView.setWebChromeClient(new WebChromeClient() { //For Android

    2.5K50

    拥抱国产化:转转APP的鸿蒙NEXT端开发尝鲜之旅

    这方面,由于Android 的开放性以及侧载安装的支持,问题表现的尤为明显,而 iOS 是一个可以学习的老师。针对上面的问题,HarmonyOS Next 又是如何应对的呢?...具体可以看下图:(图片来自《鸿蒙生态应用安全技术白皮书 V1.0》)4、和Android、iOS的开发有何不同?...4.3 开发资料和交流Android 从 2008 年谷歌布,iOS 从 2007 年苹果发布,距离到现在已经有了 16~17 年之久,在这期间,互联网上积累了无数的开发资料和经验分享,也有着大量的开源项目和社区...目前在 Android 和 iOS 中,如果想要在应用中上传一张照片,就需要同意该应用获得图库的访问权限,而带来的弊端就是,这个应用今后可随意访问你图库中的所有图片。...6.2 前期如何确定影响范围和制定方案Ability 层的接口:转转的 WebView 历经多年的演进,Native 与 WebView 的交互 API 是有一定历史包袱的。

    95510

    工具 | 使用Typora写文章如何一劳永逸的上传图片?

    然而在Typora中编辑文章时,上传的图片都存在本地,如果要发表到自己的博客上,图片就会不显示,还需要再手动上传一下,那是相当的麻烦的,这篇文章将介绍一下,如何设置Typora的图床,一劳永逸。...这里需要借助 PicGo 来充当上传的工具,而使用 Gitee 作为图片仓库。 ❝GitHub也可以,但它有时候打开很慢,影响心情。而Gitee免费好用,速度快。...本文内容包括: 创建Gitee图床项目 在PicGo中设置Gitee图床 设置Typora使用PicGo图床 创建Gitee图床项目 新建一个仓库 ?...image-20210609123022495 设置Typora使用PicGo图床 文件 - > 偏好设置 ? image-20210609131352330 点击“验证图片上传选项”验证一下: ?...image-20210609131458547 爽歪歪,接下来上传图片,看一下路径 ?

    1.5K20

    WebView开源库终极方案

    目录介绍 01.前沿说明 1.1 案例展示效果 1.2 该库功能和优势 1.3 相关类介绍说明 1.4 WebView知识点 02.如何使用 2.1 如何引入 2.2 最简单使用 2.3 常用api 2.4...,最新版本,功能强大; 支持打开文件的操作,比如打开相册,然后选中图片上传,兼容版本(5.0); 支持加载word,xls,ppt,pdf,txt等文件文档,使用方法十分简单; 支持设置仿微信加载H5页面进度条...WebViewJavascriptBridge js桥接接口 X5WebChromeClient 自定义x5的WebChromeClient,处理进度监听,title变化,以及上传图片...07.如何使用DeepLink 08.为什么WebView那么难搞 09.如何处理加载错误 10.应用被作为第三方浏览器打开 11.理解WebView独立进程 12.使用外部浏览器下载 13.tel,sms...4.4.2 定制js的alert,confirm和prompt对话框 4.4.3 x5长按图片如何操作 4.4 4 x5长按文字内容如何自定义弹窗 4.4.5 webView.goBack()会刷新页面吗

    3.9K30

    基于腾讯x5开源库,提高60%开发效率

    目录介绍 01.前沿说明 1.1 案例展示效果 1.2 该库功能和优势 1.3 相关类介绍说明 02.如何使用 2.1 如何引入 2.2 最简单使用 2.3 常用api 2.4 使用建议 03.js调用...webView的正确高度 4.0.5 使用scheme协议打开链接风险 4.0.6 如何处理加载错误 05.webView优化 5.0.1 视频全屏播放按返回页面被放大 5.0.2 加快加载webView...,功能强大; 支持打开文件的操作,比如打开相册,然后选中图片上传,兼容版本(5.0) 支持加载word,xls,ppt,pdf,txt等文件文档,使用方法十分简单 1.3 相关类介绍说明 BridgeHandler..." android:scrollbarSize="3dp" /> 也可以使用X5WebView,已经做了常见的setting属性设置WebView android:id="@+id...但有个副作用就是,当WebView视图被整体遮住一块,然后突然恢复时(比如使用SlideMenu将WebView从侧边滑出来时),这个过渡期会出现白块同时界面闪烁。

    4.4K30

    首个hybird商业项目踩坑总结

    版本混合使用, // Android版本变量 final int version = Build.VERSION.SDK_INT; // 因为该方法在 Android 4.4 版本才可使用,所以使用时需进行版本判断...如果JS想要得到Android方法的返回值,只能通过 WebView 的 loadUrl ()去执行 JS 方法把返回值传递回去 WebView的文件上传 当在网页里有文件上传组件时,我们惊奇的发现...Android端这个文件上传组件并没有起作用。...现在Android4.4 之下的Android手机已经占比非常少了,不过有兴趣的同学可参看你不知道的 Android WebView 使用漏洞,该篇文章比较详细的解析了如何解决该安全隐患 WebView...源码解决法 这个方法就是RTFSC(Read The Fucking Source Code),从LeakCannary分析得出内存泄露在 org.chromium.android_webview.AwContents

    1.6K10

    HarmonyOS 开发实践——基于webview的Picker拉起

    场景描述在webview中拉起文件管理器,图库以及相机。场景一:在web页面实现文件和图片上传。...场景二:在web页面拉起摄像头,实现拍照上传方案描述场景一本地h5页面内picker拉起效果图在web页面实现picker拉起文件管理器。在web页面实现picker拉起图库。...方案调用web的onShowFileSelector事件响应用户在h5侧写入的“选择文件”按钮,并使用文件选择器对象DocumentViewPicker的select方法,通过选择模式拉起documentPicker...code is ${err.code}, message is ${err.message}`);    })调用web的onShowFileSelector事件响应用户在h5侧写入的“选择文件”按钮,并使用图库选择器对象...PhotoViewPicker的select方法,通过选择模式拉起photoPicker界面选择图片。

    43110
    领券