在安卓cordova应用程序中使用Web Pack构建时出现文件未找到错误

6
我想将一个使用webpack构建的基于react的web应用程序包装在cordova容器中,以适配Android设备。 我已经成功地为iOS构建了cordova应用程序,并且一切都运行良好。 但是,在构建Android时,像webpack的file-loader使用所需的图像和字体等静态资源未正确加载。 Web视图尝试从file:///android_asset/www/build/myImage.png等地址加载所有资源,但日志记录了文件未找到的错误。 如果例如我直接通过image标签在index.html中链接相同的图像,则可以正确加载该图像,但更改我的webpack配置文件中的publicPath属性没有起作用。非常感谢您的帮助。提前致谢。

我非常想知道你是否解决了这个问题。 - Kurt Johnson
我也希望能够解决这个问题。 - gkatchmar
2个回答

0
我的解决方案是在package.json中添加 "homepage": "/android_asset/www/",它可以很好地处理动态路径。

0

我的暴力解决方案:

React 构建前:在应用程序的 package.json 中添加 "homepage": "./"。

React 构建后和 Cordova 运行 Android 前:在 www/static/js 中,对 main###.js 文件中所有图像/PDF 文件的“static/media”进行搜索/替换,“android_asset/www/static/media”(不是 .map 文件)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接