Unity 工具之 内嵌网页/浏览器插件使用和学习笔记

article/2025/10/3 2:15:11

1、Embedded Browser 插件(文件夹名ZFBrowserUnity)

优点:设置简单,功能强大:输入url地址,拉取网页信息,可设置页面尺寸,可显示透明背景的网页,可与显示的页面进行互动(页面互动和相应添加的unity事件)。PC端优选。

缺点:不支持android、iOS、UWP平台仅支持PC端、Unity编辑器、 OS、Linux;

详见:Embedded Browser | GUI 工具 | Unity Asset Store;


2、UniWebView插件,

适用于Andriod、ios和Mac os,据说在移动端效果最好。支持WP8。

不支持windowsPC桌面系统,包括编辑器状态显示的网页是贴屏显示

测试结果:

(1)该插件显示的网页是贴屏显示,显示网页覆盖做的UI,UI放到显示网页的Image外部,不要有重叠部分才能相应实现对应UI功能。故,无法实现点击页面/页面位置,显示放大的页面,这个功能。(也可能了解不够深入,未能解决该问题)。

(2)该插件可以简单方便的设置需要加载什么样的网页(输入地址链接即可),较简单的设置是否显示网页,前进后退网页页面等功能,以及设置加载网页的显示位置、大小尺寸。但无法设置改变加载的网页的尺寸(以适配显示区域)。

详见:UniWebView 4 | 网络 | Unity Asset Store;

3、UnityAndroidWebviewToTexture插件

支持安卓移动端,3d环境使用,非贴屏显示使用。

测试结果:

理论:通过地址,获取网页页面byte信息,然后创建加载新的Texture2D显示在移动端。

优点:

1、使用简单,且通过地址获取的网页可以自适应显示在限定的显示区域。

2、网页端内容改变时,移动端会自动刷新;

3、支持触屏点击、双击等事件。

缺点:

1、移动端显示为静态的图片的Texture/Texture2D,或3d物体的Renderer的Mesh;无法与网页进行互动。

2、找不到设置网页透明通道和设置网页页面放缩的功能方法。

详见:Texture Web View (Android) | GUI 工具 | Unity Asset Store;

4、3D WebView for Android插件

有多种包,可选支持android、ISO、WindowsPC、macOS等待。

测试效果:功能挺强大。倾向优选

优点:

1、可以动态显示加载的页面,且可以和加载的页面进行交互(如加载百度页面,可使用百度页面里的搜索栏进行搜索、页面跳转等);

2、对页面添加的事件也可以正常运行(如双击显示展示的页面,点击展示的页面之外区域,掩藏页面等);

3、可动态更改页面地址,显示不同的页面;可动态设置显示页面的分辨率来实现在显示框里放大或缩小页面。

缺点:找不到设置加载的网页背景透明度的设置,显示的页面背景不透明度是百分之百。(在线卑微,说支持透明网页,但还没发现使用方法)

——————续2021/06/25(3D WebView显示问题)———————

1、通过使用插件文档里,在前端网页端里添加标签,实现显示的页面背景透明显示。

开发文档地址:

3D WebView: cross-platform web browser for Unity (Android, iOS, Windows, macOS, and UWP / Hololens) | Vuplex

具体透明度官方blog地址: 

How can I make a webview transparent? | Vuplex Support

 我这边是前端那边做的页面是全透明的,unity端给页面加背景底图。最初加载过来页面是不透明的,有网页背景显示,后来查官网blog,让前端同时帮忙在页面<head>加上
<meta name="transparent" content="true">这句话,解决透明度问题。

注:页面修改更新后,客户端这边记得清理下浏览器页面/unity缓存,不然加载的页面可能显示是修改前的页面,没有透明度效果。

2、项目中使用3D WebView问题:

(1)问题:

1)在3d环境中显示页面可正常显示(使用WebView);

2)在画布环境中加载页面时(使用CanvasWebView),加载的页面完全看不到,环境中页面显示区域显示效果是什么都没有,但触摸点击,可发现该位置上有相关页面,且可正常与页面进行互动(如点击到百度页面的输入框,可以输入文字进行搜索),页面上相关点击事件也可正常使用。

(2)初步结论:

经测试排除画布方向错误、镜头位置和渲染层级影响,以及URP管道渲染影响(支持URP技术)的可能。

(3)深度研究:

原因:webview设置的分辨率和webview所在的canvas的设置冲突,WebView缩放问题

EG:

1)默认情况设置:

CanvasWebViewPrefab预制体上分辨率InitialResolution=1;

CanvasWebViewPrefab预制体运行时生成的WebViewPrefab的分辨率InitialResolution=1300;

canvas的CanvasScaler可根据需求设置;

2)当我们需要根据需求缩放页面时:

如加载的页面在显示框里放大显示时,改CanvasWebViewPrefab的Resolution为0.3,0.4等等

3)页面不显示时的错误参数(无报错,也有可能是切换调试器晚了,错过开始的报错提示)

CanvasWebViewPrefab预制体上分辨率InitialResolution=2.5;(实际加载显示的页面进行缩小)

canvas的CanvasScaler的Mode=Constant Pixel Size(没有设值预设尺寸:(Mode=ScaleWithScreenSize(3840*2160)));

canvas的Canvas-RenderMode=ScreenSpace-Overlay(非项目下这个参数这样设置没问题,但项目里该模式不显示出页面)

4)页面不显示时的错误参数(有报错)

CanvasWebViewPrefab预制体上分辨率InitialResolution=2.5;

canvas的CanvasScaler的Mode=ScaleWithScreenSize(3840*2160);

canvas的Canvas-RenderMode=Main Camera

报错:WebView分辨率为1300,但画布设置分辨率过大,不匹配,请修改合适的分辨率;

ArgumentException: The application specified an abnormally large webview size (9550px x 4380px), and webviews of this size are normally only created by mistake. A webview's default resolution is 1300px per Unity unit, so it's likely that you specified a large physical size by mistake or need to adjust the resolution. For more information, please see IWebView.SetResolution: https://developer.vuplex.com/webview/IWebView#SetResolution

(4)解决问题时设置:

CanvasWebViewPrefab——InitialResolution=1;

canvas——CanvasScaler的Mode=ScaleWithScreenSize(3840*2160);

canvas的Canvas-RenderMode=ScreenSpace-Camera;

canvas的Canvas-RenderCamera=Main Camera;

则可以正常显示。 

(5)早期可正常运行时相关测试数据:

CanvasWebViewPrefab——InitialResolution=1;

canvas——CanvasScaler的Mode=ScaleWithScreenSize(3840*2160);

canvas的Canvas-RenderMode=ScreenSpace-Camera;

canvas的Canvas-RenderCamera=ScreenSpace-Camera;

猜测问题原因:WebView缩放问题,导致页面虽加载,功能正常,但因为缩放适应出现错误,导致最终看不到加载页面的情况

详见:3D WebView for Android (Web Browser) | GUI 工具 | Unity Asset Store;

———续2021/08/30(Embedded Browser 加载页面问题)————

关于unity和前端页面加载交互使用简单解析:

1)插件:Embedded Browser 插件(文件夹名ZFBrowserUnity)

1)环境:Unity客户端、支持PC端打包使用;

2)预制体:将插件文件里的Browser(GUI)预制体拖到目标UI上;

3)加载脚本:根据需求自己写加载页面的脚本,并绑定到Browser(GUI)预制体上:

(如下图中:LoadWebPage脚本)

使用到加载Api:gameObject.GetComponent<Browser>().LoadURL(url, true);

4)编辑器内运行,或打包后运行即可。

5)详细参考插件demo。

EG:string testURL = "https://www.baidu.com";gameObject.GetComponent<Browser>().LoadURL(testURL, true);

个人学习笔记,不足之处欢迎指点,诚心学习!

注:查找资料时,看到一篇插件整理挺详细的文章,贴下地址,联系侵删:

https://cloud.tencent.com/developer/article/1875790


http://chatgpt.dhexx.cn/article/FmAhkRCv.shtml

相关文章

java内嵌浏览器的几种方式

最近遇到一个特殊的项目需求&#xff0c;就是需要在一个屏幕上打开多个窗口大小不同的浏览器、并且显示不同的页面。因为是需要浏览器无边框的&#xff0c;在网上找了好多资料&#xff0c;发现前端好像很难实现。所以就打算采用java后台内嵌浏览器&#xff0c;然后实现无边框的…

winform内嵌浏览器的2种实现方式

可使用WebBrowser或axWebBrowser实现winform窗体内嵌浏览器 一 使用axWebBrowser打开浏览器 1.新建个winform项目 2.添加axWebBrowser控件 打开工具箱,右键空白处,点击选择项 选择COM组件,勾上Microsoft Web Browser 把控件拉拽到winform窗体上 3.使用axWebBrowser打开浏览器 …

云表中表单配置内嵌浏览器

给大家分享一个在表单里也能嵌入网页的一个功能&#xff0c;云表的内嵌浏览器 1.首先我们先添加一个云表内嵌浏览器&#xff0c;在模板设计的右边点击表格面板点击下拉后可以先将浏览器&#xff0c;这个浏览器是需要一整个表格的 2.添加好浏览器后&#xff0c;我们表单设置…

Android开发实用小技巧九——内嵌WebView的使用(内置浏览器)

文章目录 前言一、效果展示二、代码1.样式布局2.活动页面 总结 前言 内嵌WebView的使用&#xff08;内置浏览器&#xff09;。 一、效果展示 二、代码 1.样式布局 res/layout/activity_browser.xml &#xff1a; <?xml version"1.0" encoding"utf-8"…

springboot 调用Jxbrowser内嵌浏览器

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、Jxbrowser是什么&#xff1f;二、使用步骤1.下载jar包一、在jxbrowser的启动类中加入如下代码&#xff1a;二、在resources目录下新建META-INF/teamdev.lic…

javaFX实现桌面应用程序内嵌浏览器(一、框架建设)

一、jdk不匹配问题 修改jdk版本不成功&#xff1a; 1、注意环境变量是否更改 2、jdk路径已经更改成功但cmd打开输入Java -version还是原先版本&#xff1a;在PATH的那一溜里将把JAVA_HOME放到最前面去 3、idea修改jdk版本 IDEA修改JDK版本完整版 以及Modules中的Sources&#…

IDM下载工具

安装的时候一直next就好了&#xff0c;尽量将idm安装在c盘里面 下面这个链接时绿色版&#xff0c;不需要安装 然后用idm免注册脚本运行一下 下载链接&#xff08;传不上来&#xff0c;发邮箱我给你传一份&#xff0c;这个阿里云盘有点low啊&#xff09; 尽量在关闭360等工具运…

idm 的使用

一:首先在chrome中添加IDM插件: http://www.internetdownloadmanager.com/ 首先进入IDM官网-->Support-->FAQ,点击BROWSER INTEGRATION QUESTIONS 然后点击第8条: 然后点击链接安装Chrome插件: 再然后, 启用该插件. 二、再下载IDMv.6.333 链接&#xff1a;https://do…

IDM的介绍、下载、注册激活使用教程详解 V6.38.2021

IDM是“Internet Download Manager”的简称&#xff0c;意思是“互联网下载管理器”&#xff0c;既是一类软件的统称&#xff0c;也专指一个非常知名的互联网下载器&#xff0c;这个软件的名字就叫IDM&#xff0c;被誉为地表最强下载器&#xff0c;屌丝救星&#xff0c;小电影神…

Internet Download Manager6.41提速下载器安装下载教程

很多人都知道Internet Download Manager(以下简称IDM)是一款非常优秀的下载提速软件。它功能强大&#xff0c;几乎能下载网页中的所有数据&#xff08;包括视频、音频、图片等&#xff09;&#xff0c;且适用于现在市面上几乎所有的浏览器&#xff0c;非常受大家欢迎。 Intern…

大神论坛 逆向分析 Internet Download Manager 序列号算法 附IDM注册机完整源码

1. 前言 idm version : 6.38 Build 23 2.算法逆向 IDM的序列号验证函数定位在&#xff1a; 下面是在IDA下的代码分析: .text:00510010 push ebp .text:00510011 lea ebp, [esp-1FCh] .text:00510018 sub esp, …

IDM使用介绍篇

IDM作为一款超级强大的下载工具&#xff0c;是很多人的首选&#xff0c;尤其是在当pandownload被封之后&#xff0c;找不到合适的替代下载工具&#xff0c;此时请把目光转移到IDM上&#xff0c;这款软件你值得拥有。所以接下来将介绍这款软件的使用。 1、下载地址 这里我提供了…

Internet Download Manager v6.41.3中文特别版IDM下载器免费下载

Internet Download Manager v6.41.3中文特别版(IDM)&#xff0c;全球最佳下载利器。Internet Download Manager 是一款Windows 平台功能强大的多线程下载工具&#xff0c;国外非常受欢迎。支持断点续传&#xff0c;支持嗅探视频音频&#xff0c;接管所有浏览器&#xff0c;具有…

IDM(Internet Download Manager)最新一款 功能最全/电脑必备的下载器激活序列号版

近些年移动互联网兴起&#xff0c;人手一部智能手机。人们花在PC上的时间越来越短&#xff0c;关注手机的时间越来越长。 4G、5G移动网络和云服务的飞速发展&#xff0c;网速越来越快&#xff0c;人们更愿意在线刷剧&#xff0c;在线存储。很多资源再也不需要存在本地占用磁盘空…

IDM6.39最新版补丁新增功能介绍

IDM6.39是一款转为安卓用户研发的下载管理器应用程序&#xff08;极速下载站提供&#xff09;&#xff0c;IDM Plus&#xff0c;下载速度最多可以提高620倍。包含的一组功能使其成为完美的下载管理器。IDM 支持多种文件格式&#xff0c;以确保您可以下载任何格式的任何文件。ID…

Internet Download Manager(V6.37版本IDM)免费序列号密钥激活版使用过程中的一些常见问题

在众多电脑必备软件中&#xff0c;下载软件 IDM 的不可替代性十分明显&#xff0c;无论是在文件下载、视频下载&#xff0c;还是网盘加速&#xff0c;IDM 都扮演着重要的角色。 1、Internet Download Manager的续传功能可以恢复因为断线、网络问题、计算机当机甚至无预警的停电…

Internet Download Manager用假的序列号注册,IDM将退出

下载下来直接双击绿化按钮即可. 软件链接 : https://pan.baidu.com/s/1agK3cLtjJzXcGEgsuv5mVQ 提取码: ckm7

IDM下载器

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 安装IDM教程并输入序列号 下载IDM&#xff0c;输入序列号 例如&#xff1a;先下载IDM再输入序列号 提示&#xff1a;本文参考了别人的博客&#xff0c;参考的博客连接放在…

idm2021中文版序列号加速下载百度云网盘大文件教程

自从不限速度盘下载工具Pandownload被封杀后&#xff0c;有些网友纷纷表示&#xff1a;幸好我们还有Internet Download Manager&#xff08;IDM&#xff09; 但是&#xff0c;对于很多小伙伴来说&#xff0c;初次听到这个名词时都是一脸懵逼——啥是IDM&#xff1f; 今天&…

IDM永久版下载神器如何正确使用呢?超详细教程和序列号

大家从网上下载资源时还在使用浏览器自带的下载方式吗&#xff1f;小编觉得用这种方式下载的话速度会比较慢&#xff0c;无法完全利用上自己的带宽。所以小编给大家安利一款下载神器——Internet Download Manger&#xff08;IDM&#xff09;&#xff0c;这是大多数人公认的下载…