Desktop是保留字!UE在打包Android时不允许通过!
我使用命令打包
C:\Epic Games\UE_5.7\Engine\Build\BatchFiles>RunUAT.bat BuildCookRun -project=C:/UE/StrangeAutumn_Andro/StrangeAutumn_Andro.uproject -noP4 -platform=Android -clientconfig=Shipping -serverconfig=Shipping -cook -allmaps -build -stage -pak -archive -UTF8Output -cookflavor=ASTC -architecture=arm64 -targetplatform=Android -compressed -prereqs -clean -archivedirectory=C:/UE/_PackageProject/StrangeAutumn_Andro/
最后被中断了,因为Content\FMOD\Desktop, 这个Desktop目录是UE要求的保留字,不允许里面存在!
修正这个问题吧,改别的名称
噢打包命令去掉 -clean ,不然不成功
你好,感谢你分享的截图和信息!
这个问题确实和 UE 的打包限制有关。
在我们的UE 安卓平台文档里有提到, 安卓平台打包的时候需要把 banks 放到 Mobile 子目录,并在 AndroidGame.ini 里把 FMOD/Desktop 从 staging 移除,改为 FMOD/Mobile
可以按下面步骤尝试:
- 打开
{项目名}/Config/Android/AndroidGame.ini(如果没有的话可以自己创建一个) - 在文件中加入以下内容:
[/Script/UnrealEd.ProjectPackagingSettings]
-DirectoriesToAlwaysStageAsNonUFS=(Path="FMOD/Desktop")
+DirectoriesToAlwaysStageAsNonUFS=(Path="FMOD/Mobile")
- 在
{项目名}/Content/FMOD下新建一个名为Mobile的文件夹 - 将 banks 从
{项目名}/Content/FMOD/Desktop复制到{项目名}/Content/FMOD/Mobile
完成后再尝试打 Android 包,通常可以解决这个问题。
这类问题在这个帖子里面也有类似讨论:Unable to create an Android build with UE 4.26.1 (The following files are set to be staged, but contain restricted folder names ("Desktop")) - #2 by jeff_fmod
希望这些信息有帮助!
我刚刚有按照你说的做了,打包安卓时是通过了Desktop关键字.
但是,非常难用.
FMOD/Desktop 必须存在,不然就各种问题,拖进去场景里的 Events 警告和播放不了.
LogFMOD: Warning: C:\buildagent2\work\c1c3f17eb167c494\studio_api\src\fmod_objectlookup.h(125) - Lookup failed for EventModel: {aa4f556d-7e2a-4f3b-a354-37cac80a681a}
我只是尝试了导入的这一步,是非常难.
正常的流程不应该是这样的吗?
”1在 FMODStudio里的设定界面 配置好各平台对应的目录,2然后制作,3然后按F7( File/Build ) 按键,4切换到 UE里就能使用了.”
我就算是在 设置里配置了移动,删掉Desktop(图1),
然后在FMOD里按下 File/Build 按键,然后返回 UE里,也没看到 FMOD/Moblie被自动生成出来/自动搞定.
这些如果是问题,希望能改进简单易用
还有个无关紧要的小BUG,在打开 FMOD Studio后,然后在桌面的右下角切换 声道,转回到 FMODS里播放音乐,会发现 FMODS没有跟着切换回来.
li ,你能看到我上面的回复吗? 如果 UE里不放 FMOD/Desktop 在Editor模式下播放测试不了
这个问题会得到解决吗?什么时候会开始解决的?
这个行为本身是设计如此,并不是一个待修复的问题。
Desktop 文件夹里的 banks 主要是给 UE 编辑器 / Windows 运行时使用的,因为编辑器本身是按 PC 平台在运行的,所以会默认从 FMOD/Desktop 读取 banks。如果删除了 Desktop 文件夹,就会出现你看到的这类报错。
对于 Android 打包,实际使用的是 FMOD/Mobile 目录下的 banks。只要按照文档在 AndroidGame.ini 中将 staging 从 FMOD/Desktop 改为 FMOD/Mobile,最终打包时不会包含 Desktop 的内容。
这种 Desktop / Mobile 的分目录设计是为了支持不同平台使用不同配置的 banks,因此一般不建议删除 Desktop,而是同时保留两套 banks。
我这边似乎暂时无法复现这个问题,在 Studio 中添加 Mobile 平台后,对应的 Mobile 文件夹通常会自动生成。可以麻烦你提供一下所使用的 FMOD Studio 版本吗?
感谢你的反馈!这个行为是目前 Studio 的已知表现。
FMOD Studio 在运行时不会自动刷新音频设备或声道配置,目前只有在进入 Edit → Preferences 时会重新枚举音频设备刷新。如果这个行为对你的工作流程有影响,我可以帮你记录一个改进建议提交给开发组评估。
无关紧要的小BUG不是什么问题,有空再看.
我明天重装FMOD和UE的FMOD插件,再测试下,如果有问题再来告诉你

