【问题标题】:THREE.js - Cannot load texture locally in Chrome Browser in Android deviceTHREE.js - 无法在 Android 设备的 Chrome 浏览器中本地加载纹理
【发布时间】:2026-02-10 15:30:01
【问题描述】:

我一直在尝试在 Android 设备的 Chrome 浏览器中为 WebGL 应用程序加载纹理

我遇到了类似的帖子 THREE.js - Can't load texture locally,其中提供了一个加载纹理的解决方案,适用于仅适用于 PC/笔记本电脑设备的 Chrome

标志 --allow-file-access-from-files 可以在笔记本电脑设备上使用,因为我可以使用命令行,但如何在移动设备上使用?

有人可以帮忙吗?

【问题讨论】:

    标签: android google-chrome three.js textures


    【解决方案1】:

    Crosswalk 项目嵌入了 Chromium 网络视图,并且按照标准,将允许从文件中加载纹理和模型。如果您有一个列入黑名单的 gpu,您可以使用它来编译您的 Crosswalk 演示: make_apk.py --package=org.crosswalkproject.yourproject \ --manifest=your_webgl_demo/manifest.json --xwalk-command-line='--ignore-gpu-blacklist'

    如果您的 gpu 完全支持 webgl,则不需要最后一部分。 如果您有问题,请将最后一部分替换为 --xwalk-command-line='--disable-web-security' 这将使您可以完全访问文件(涉及所有风险)。

    但最简单的方法是使用 android 上的网络服务器从 127.0.0.1:8080 访问文件。 Playstore 上有许多免费的网络服务器,我每天都使用它们在我的设备上测试 webgl 演示。

    【讨论】: