在我的工作中,我使用发布到iOS的Unity游戏。为了进行更新测试和其他测试,我曾经使用Xcode-> Window-> Devices and Simulators中的download container和replace container选项。但是自最近以来,该选项似乎不再起作用,特别是将容器重新加载到设备上,我不知道为什么突然发生这种情况。
下载容器时,我可以看到存储的信息保存在appdata-> Library-> Preferences-> my_apps.plist中。但是当我尝试更换容器时,它默默地拒绝工作。
在更换期间查看设备控制台时,我发现了以下线索:
libsqlite3.dylib的客户端中的错误:数据库完整性受到破坏 违反API:vnode在使用中未链接:....
和
沙箱:mobile_house_arr(311)deny(1)file-write-create / private / var / mobile /容器/数据/应用程序/E0099BB7-3FC3-40EB-BE84-157BE681360B/Library/Caches/Snapshots/com.PaulChimp.FirstAppTest/08134EA5-0D8C-4228-9806-4E9788981A13@2x.ktx>
还有其他人在替换容器文件时遇到问题吗?尤其是Unity制作的游戏吗?
答案 0 :(得分:1)
当我遇到相同的问题时,事实证明我将两个数据库(旧的和替换的)都编译到了项目中,并且仅加载了两个数据库之一。我相信出现错误的原因仅仅是当您尝试更改应用程序数据库时文件正在使用中。
我建议使用“窗口”>“设备和模拟器”功能下载容器,以查看是否可以发现任何明显的问题。
下载后的应用程序数据库位置为MYAPP.xcappdata(显示程序包内容)> AppData>库>应用程序支持。
我最终下载了容器,删除了不需要的数据库,并为应用程序替换了相同的容器。
希望有帮助!祝你好运!