Unity发布WebGL解决移动端打开会出现警告弹窗点击确认问题

本文介绍了一种解决WebGL项目在手机上显示警告并需要用户手动确认的问题的方法。通过修改UnityLoader.js文件中的特定代码,可以避免移动端浏览器的警告弹窗,提升用户体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、打包出WebGL内容,如下所示:

二、打开Build文件夹找到“UnityLoader.js”文件复制

三、在项目中编写如下修复webgl在移动端打开会出现弹窗警告脚本"FixWebglWaring.cs",注意这个脚本需要放置在Editor文件夹下

/***
*	Title:"三维可视化" 项目
*		主题:修复WebGL项目在手机上显示警告需要按下OK按钮才能显示问题
*	Description:
*		功能:XXX
*	Date:2019
*	Version:0.1版本
*	Author:Coffee
*	Modify Recoder:
*/

using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Text.RegularExpressions;
using UnityEngine;
using UnityEditor;

namespace SimpleUIFrame
{
	public class FixWebglWaring : MonoBehaviour
	{
        static string strUnityLoaderjsPath = Application.streamingAssetsPath+ "/WebGLUnityLoaderJS/";

		void Start()
		{
            if (!Directory.Exists(strUnityLoaderjsPath))
            {
                Directory.CreateDirectory(strUnityLoaderjsPath);
            }
            Debug.Log("路径:"+strUnityLoaderjsPath);
		}

        [MenuItem("FrameWorkTools/FixWebGLWaring")]
        public static void FixWebGLWaring()
        {
            if (!string.IsNullOrEmpty(strUnityLoaderjsPath))
            {
                var path = Path.Combine(strUnityLoaderjsPath, "UnityLoader.js");
                var text = File.ReadAllText(path);
                text = text.Replace("UnityLoader.SystemInfo.mobile", "false");
                text = text.Replace("[\"Edge\", \"Firefox\", \"Chrome\", \"Safari\"].indexOf(UnityLoader.SystemInfo.browser) < -1", "false");
                File.WriteAllText(path, text);
                Debug.Log("修改完成");
            }
            

        }
	}
}

四、先点击Unity界面上的“FixWebGLWaring”标签,自动创建出基础需要替换js文件的文件夹“StreamingAssets->WebGLUnityLoaderJS”

五、将刚才复制的“UnityLoader.js”文件粘贴到“StreamingAssets->WebGLUnityLoaderJS”路径下

六、再次点击Unity界面上的“FixWebGLWaring”标签

七、将“StreamingAssets->WebGLUnityLoaderJS”路径下的“UnityLoader.js”复制替换打包出来的UnityLoader.js文件

八、此时用移动端访问该WebGL则不会出现弹窗

该脚本下载地址:修复移动端访问webgl出现弹窗警告脚本

注意:该内容参考:Unity WebGL 取消浏览器警告

                                Unity3D_WebGL_手机和其他浏览器警告处理

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

牛奶咖啡13

我们一起来让这个世界有趣一点…

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值