【问题标题】:Why is Settings.bundle causing iTunes to say my iPhone App is not valid?为什么 Settings.bundle 导致 iTunes 说我的 iPhone 应用程序无效?
【发布时间】:2011-10-20 02:52:35
【问题描述】:

好的,过去几个月我一直在使用 MonoTouch 和 MonoDevelop 开发 iPhone 应用程序。在这段时间里,我已经能够将应用程序部署到我的手机以进行调试/测试,并且还能够编译 Adhoc 版本供我的雇主试用。这一切都很好......直到本周。

我发送的最新版本无法进入 iTunes 并失败并出现以下错误:

The app "Payload.ipa" could not be added to your iTunes library because it is not a valid app.

所以基本上你的通用“出了点问题,但我不会告诉你到底是什么”类型的错误。

我最初的调查似乎表明问题可能出在包含特殊字符的应用名称上,但由于我很长时间没有更改应用名称,所以这不是问题。我确实向 info.plist 添加了一个捆绑版本,但删除它并不能解决问题。

然后我查看了输出文件夹中的文件,发现现在包含 Settings.bundle(我添加了一个名为 Config.plist 的文件来存储应用程序使用的一些设置)。在 MonoDevelop 中,我按照我所遵循的指南的建议更改了选项,使其成为“内容”和“始终复制”。当在模拟器中或通过 MonoDevelop 在我的手机上运行应用程序时,这非常有效。但是当我将应用程序打包为 .ipa 文件时,iTunes 说该应用程序无效。如果我删除 Settings.bundle iTunes 会接受它。

我已阅读到设置“内容”时不需要“始终复制”选项,但即使选项设置为“不复制”,Settings.bundle 文件仍会出现在输出 (bin) 文件夹中。

我还认为也许我必须将名称更改为 Root.plist,因为这就是示例使用的内容,并且可能预期会是这样。但再次更改名称并没有什么不同。

所以我只是想知道是否有其他人遇到过这个问题以及您如何解决它?

【问题讨论】:

  • 您是否尝试过使用TestFlightApp.com?我建议使用它在 iTunes 上进行 beta 测试。如果您的 AdHoc 构建在从 MonoDevelop 部署时可以在手机上运行,​​那么它应该在 iTunes 中以相同的方式运行。
  • 我还没有尝试过TestFlight,但现在看看它。我不确定这将如何解决问题,因为之前只需将 .ipa 文件通过电子邮件发送给需要它的人并让他们通过 iTunes 同步就可以了。不过话虽如此,还是值得一试。
  • 您是否在您的 iOS 配置门户中设置了这些手机?一个简单的方法是将每部手机插入您的 Mac,然后单击 XCode 管理器中的“用于开发”。另一种方法是让他们在手机上输入一个号码,但我相信 TestFlight 会为您自动完成该过程。
  • 是的,所有这些都已经设置好并且一直在工作。我还以为配置文件可能已过期,但它仍然有效并且从内存中通常会给我一个不同的错误。我已经尝试了 TestFlight,它看起来绝对是测试部署的方式。如上所述(和下文) Settings.bundle 是导致问题的原因。从 Payload 文件夹中删除该文件使应用程序正常工作。

标签: iphone xamarin.ios itunes monodevelop


【解决方案1】:

好的,经过一番折腾后,我使用 TestFlight 将应用程序部署到我的手机(我无法在我的开发机器上使用 iTunes 进行同步)。

使用包含在 Payload 中的 Settings.bundle 部署应用程序即使使用 TestFlight 也不会安装在手机上。但是,我决定尝试不使用该文件,看看应用程序是否可以在没有它的情况下运行,令我惊讶的是它确实如此。

这有点烦人,因为之前只是将所有文件从输出目录复制到 Payload 目录就可以了。我仍然不确定为什么存在 Settings.bundle 时会出现问题,甚至如果不需要它,为什么会出现问题。

【讨论】:

    【解决方案2】:

    我遇到了同样的问题,经过数小时的调查后,我发现“settings.bundle”的资源分支丢失了,因为我在 FAT32 分区上创建/修改它。您应该在 OSX 分区上创建 settings.bundle 或修复资源分叉。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多