Xcode 7 GM创建了通用存档而不是iOS应用存档

时间:2015-09-11 12:54:35

标签: ios xcode

我最近开始使用Xcode 7 GM。 当我存档我的项目时,我得到一个通用的Xcode存档而不是iOS存档。

我几乎尝试了所有以下内容:

我比较了以前成功存档的内容和某些组件的不同文件夹结构:

  • Swift库位于子文件夹
  • 应用扩展程序位于.app包
  • 之外
  • info.plist缺少密钥

enter image description here

还有其他人遇到过这个问题吗?如果是这样,你解决了怎么办?

修改

我们正在使用Cocoapods 0.38.2

5 个答案:

答案 0 :(得分:15)

我添加了同样的问题:一个旧的Xcode项目,Xcode 7(不是GM,App Store版本)和Cocoapods。 我一直在修修补补,尝试过Cocoapds 0.39 b3和b4但没有成功,在Build Settings中更改了params,但最后 - 对我来说 - mrezk在https://github.com/CocoaPods/CocoaPods/issues/4021中显示了问题:

  

缺少Info.plist中的ApplicationProperties

由于我不习惯使用Info.plist和这些密钥,我在Apple Dev论坛中找到了一个非常有用的答案:https://forums.developer.apple.com/thread/17063

总之,对于像我这样的info.plist新手;):

  1. 存档您的项目
  2. 管理器将显示Generic Xcode Archive
  3. 右键单击,在查找器中显示
  4. 右键单击,显示包装内容
  5. 在XML编辑器中打开Info.plist文件
  6. mochs所示,请在以下部分添加以下内容:
  7. 
    <key>ApplicationProperties</key>  
    <dict>  
      <key>ApplicationPath</key>  
      <string>Applications/<<APP_NAME>>.app</string>  
      <key>CFBundleIdentifier</key>  
      <string><<BUNDLE_IDENTIFIER>></string>  
      <key>CFBundleShortVersionString</key>  
      <string><<YOUR_MARKETING_NUMBER>></string>  
      <key>CFBundleVersion</key>  
      <string><<YOUR_BUILD_NUMBER>></string>  
      <key>SigningIdentity</key>  
      <string>iPhone Distribution: <<CERTIFICATE_NAME>> (<<CERTIFICATE_ID>>)</string>  
    </dict>
    

    并用您自己的值替换标记。

    保存,关闭Xcode,双击存档:它应该在管理器中作为iOS类型存档打开。

    感谢mrezkmochs解决方案。

答案 1 :(得分:4)

OP在这里。 我的团队成员都尝试过Cocoapods&#39;测试版,它为我们解决了问题。因此,我将接受我自己的答案。

虽然它可以解决这个问题,但我相信Christian Navelot的答案是不可扩展,而且在团队中无法管理。

此外,我们所有人都尝试使用cp beta而不删除Copy Pod Resources构建阶段。这意味着我也不会接受Todd Anderson的回答。

我们也没有使用静态库,我们使用的是框架(在Podfile中也称为use frameworks!)。

感谢所有人为这个问题做出贡献。看起来我们都被Xcode 7放到了同一条船上! 干杯!

答案 2 :(得分:3)

在我的情况下清除所有静态库中的“安装目录”构建设置修复了该问题。之前它被设置为“/ usr / local / lib”。

当使用“Save Built Product”作为导出方法时,Products文件夹获得了这些子目录。这就是我指向这个方向的原因。

我正在使用cocoapods 0.38.2。

答案 3 :(得分:0)

此处提到的其他答案都是临时修复,但每个需要手动完成,无论是在每个存档之后还是在每个pod install之后。

新的更好的解决方案是将cocoapods更新到最新版本,并从每个应用扩展程序中删除“Copy Pod Resources”构建阶段。

有关详细信息,请参阅https://github.com/CocoaPods/CocoaPods/issues/4021

答案 4 :(得分:0)

我在XCode7.1.1和使用WatchKit Extension的应用程序项目中遇到了类似的问题。 我通过以下步骤解决了问题

  • 打开我的应用目标的构建设置,并将设置为“跳过安装”。

  • 打开WatchKit Extension目标的Build Build设置并将 YES 设置为“Skip” 安装“

  • 打开我的WatchKit App目标的构建设置,并将 YES 设置为“跳过” 安装“

然后我可以制作iOS档案。

相关问题