0

(编辑:我能够捆绑框架,但它仍然不会采用更改后的安装目录。因此,下面的问题已更改为“未找到链接和捆绑的框架图像”)

Mac 应用程序已提交给 MAS,但被 Apple 拒绝,原因非常合理:链接的框架未捆绑。

我只是询问如何确保它正确包含在捆绑包中,并在再次提交之前在我的 Mac 上确认。

请让我知道您需要我提供什么/任何额外信息。

编辑:遵循 subzero 的说明后的更多信息。

当进行产品 > 构建时,.app 文件最终位于我机器上的 Documents/build/Release 中。

这是我的构建阶段的外观 - https://dl.dropbox.com/u/19155207/copyframeworks.jpg

并且 UIKit.Framework文件夹位于 WinKonto.app/Contents/Frameworks 内,其中包含:https ://dl.dropbox.com/u/19155207/frameworksfolder.jpg

如果我从 Releases 文件夹运行它,它仍然会给出相同的错误。只有当我从 XCode 运行它时它才能工作。你能看出有什么不对吗?

编辑 2:我已将框架文件 (UIKit) 放入包中。

这是崩溃报告错误消息:

Dyld 错误消息:未加载库:Frameworks/UIKit.framework/Versions/A/UIKit 引用自:/Users/henrikerlandsson/Documents/build/Release/WinKonto.app/Contents/MacOS/WinKonto 原因:找不到图像

但是框架在捆绑包中,并且在添加到项目之前由 install_name_tool 修改。

我不知道为什么那个修改不起作用,但我把它变成了一个私有框架,而是改变了那里的安装目录,它起作用了(见我的回答)。

4

2 回答 2

1

在 XCode 中,

  1. 将 Copy Files 构建阶段添加到应用程序的目标
  2. 将其移到 Link 阶段上方,将其目标设置为 myApp.app/Contents/Frameworks 并将框架添加到其中。
于 2012-10-08T07:04:52.377 回答
0

我把它变成了一个私有框架。我按照Embedding a Private Framework in Your Application Bundle下的说明进行操作,这让我可以将框架的安装目录正确设置到它在包中出现的位置。

于 2012-10-17T06:52:54.410 回答