【发布时间】:2021-08-30 06:57:31
【问题描述】:
我创建了一个包含声音效果的电子应用程序。我正在使用包sound-play 在我的main.js 文件中播放音效(从here 学习)。当我通过npm start 运行它时,它可以正常工作。但是在使用electron-packager 打包我的应用程序后,当我从“release-builds”文件夹运行 exe 文件时,只有音效没有播放。该应用程序的所有其他方面都运行良好。
Shutter.mp3 是项目目录中的声音文件
Main.js:
const sound = require("sound-play");
const filePath = path.join(__dirname, "shutter.mp3");
sound.play(filePath) //For playing the sound inside a function
包.json:
"scripts": {
"start": "electron .",
"package-mac": "electron-packager . --overwrite --platform=darwin --arch=x64 --icon=assets/icons/mac/icon.icns --prune=true --out=release-builds",
"package-win": "electron-packager . Namegoeshere --overwrite --asar=true --platform=win32 --arch=ia32 --icon=assets/icons/win/icon.ico --prune=true --out=release-builds --version-string.CompanyName=CE --version-string.FileDescription=CE --version-string.ProductName=\"Namegoeshere\"",
"package-linux": "electron-packager . electron-tutorial-app --overwrite --asar=true --platform=linux --arch=x64 --icon=assets/icons/png/1024x1024.png --prune=true --out=release-builds"
},
使用命令npm package-win进行打包。
只是再次指出只是包装后声音不播放。其他方面都很好。
我可能遗漏了一些非常基本的东西。你能帮忙的话,我会很高兴。谢谢。
【问题讨论】:
-
没有一些代码,很难帮你。您是否在路径中使用
__dirname加载声音文件并在打包时禁用了ASAR? -
@AlexanderLeithner 我的错。我已经添加了您提到的一些代码。现在就来看看吧。
标签: javascript node.js audio electron