欢迎光临散文网 会员登陆 & 注册

【UE4】Vivo X30 Unmount pak会闪退

2020-12-21 15:43 作者:天空游荡的鱼  | 我要投稿

问题:

    在游戏逻辑中有需要Unmount pak。 代码一直都运行没问题,直到最近在机缘之下,发现这操作会导致Vivo X30闪退, 测了其他华为、小米、1+、iPhoneX都没问题。

    其实准确的说并不一定是unmount导致的闪退。 下面看看代码是怎样的?

UnMountPak Visitor;

FString FullFilePath = FPaths::ConvertRelativePathToFull(FPaths::ProjectPersistentDownloadDir());

FPlatformFileManager::Get().GetPlatformFile().IterateDirectoryRecursively(*FullFilePath, Visitor);


//TODO  测试Vivo手机为什么崩溃

/*PakMgr* PakMgr = PakMgr::Get();

PakMgr->UnMountPak(TEXT("xxx.pak"));*/

用绿色的代码,去遍历整个目录,然后发现需要unmount的pak就处理。 会导致闪退。为了证实是不是unmount的问题,使用了黄色代码。什么也没发生。

    由于代码逻辑本身有问题,就没有去深究为什么会Crash。有可能只指针问题(unmount会有delete操作),有可能是多线程问题。 

    还有一个条件,此时可能在openLevel。

    好了,我现在得去改逻辑了。此处记录Crash的情况。


【UE4】Vivo X30 Unmount pak会闪退的评论 (共 条)

分享到微博请遵守国家法律