无法在 iOS 11 个模拟器上获取组文件夹

Cannot get groups folder on iOS 11 simulators

以下在所有 iPhone 11 模拟器上总是 returns nil 但在 11 之前的设备和模拟器上工作正常。

let containerURL = fileManager.containerURL(forSecurityApplicationGroupIdentifier: "group.my.group.name.here")

还有其他人遇到过这种情况吗?解决方法是什么?

经过一整天的调试,我想我可能找到了解决方法。

我认为这与 Bundle Identifier 有关。所以如果你有一个包标识符xx,它会失败,但如果你的包标识符是xx.xx

它会起作用

因此,例如,它因捆绑包标识符而失败:musicapp

它将与捆绑标识符一起使用:com.steventso.musicapp 甚至 com.musicapp

由于在将应用程序发布到 public 后无法更改 Bundle Identifier,解决方法是创建一个新的 Target,严格用于开发以及使用模拟器时位于命名方案为 xx.xx

的包标识符下

是的,这是一个奇怪的错误,我希望他们能修复,但我认为我一开始就用 xx 的方案命名它是错误的。

很难说这是否会破坏 iPhone X,因为没有物理设备可以测试,所以手指交叉这个工作没问题。