在开发我的第一个Mac app之后,我决定将其提交到Mac App Store,但它被拒绝了。基本上我的应用程序使用NSOpenPanel读取Xcode项目文件和NSSavePanel来保存文件完成它的工作。 评论员指出应用程序违反2.30规则 - 不符合Mac OS X文件系统文档的应用程序将被拒绝,但我不清楚原因。
当您查看应用程序的工作区时,您可以看到它使用CocoaPods来处理不应该成为问题的依赖项。接下来它有JBLocalizer.framework,它作为嵌入式库链接到JBLocalizerApp。 JBLocalizerApp是发送给审核的最终目标。
以下是评论者指出的问题:
2.30
应用程序访问以下位置:
&#39; /Users/josipbernat/Library/Developer/Xcode/DerivedData/Build/Intermediates/ArchiveIntermediates/JBLocalizerApp/IntermediateBuildFilesPath/JBLocalizer.build/Release/JBLocalizer.build/Objects-normal/x86_64/JBString.gcda 39; &#39; /Users/josipbernat/Library/Developer/Xcode/DerivedData/Build/Intermediates/ArchiveIntermediates/JBLocalizerApp/IntermediateBuildFilesPath/JBLocalizer.build/Release/JBLocalizer.build/Objects-normal/x86_64/JBPostProcessStringsOperation.gcda' &#39; /Users/josipbernat/Library/Developer/Xcode/DerivedData/Build/Intermediates/ArchiveIntermediates/JBLocalizerApp/IntermediateBuildFilesPath/JBLocalizer.build/Release/JBLocalizer.build/Objects-normal/x86_64/JBOperation.gcda' &#39; /Users/josipbernat/Library/Developer/Xcode/DerivedData/Build/Intermediates/ArchiveIntermediates/JBLocalizerApp/IntermediateBuildFilesPath/JBLocalizer.build/Release/JBLocalizer.build/Objects-normal/x86_64/JBLoadStringsInFileOperation.gcda' &#39; /Users/josipbernat/Library/Developer/Xcode/DerivedData/Build/Intermediates/ArchiveIntermediates/JBLocalizerApp/IntermediateBuildFilesPath/JBLocalizer.build/Release/JBLocalizer.build/Objects-normal/x86_64/JBLoadSourceFilesOperation.gcda' &#39; /Users/josipbernat/Library/Developer/Xcode/DerivedData/Build/Intermediates/ArchiveIntermediates/JBLocalizerApp/IntermediateBuildFilesPath/JBLocalizer.build/Release/JBLocalizer.build/Objects-normal/x86_64/JBLoadRootFilesOperation.gcda' &#39; /Users/josipbernat/Library/Developer/Xcode/DerivedData/Build/Intermediates/ArchiveIntermediates/JBLocalizerApp/IntermediateBuildFilesPath/JBLocalizer.build/Release/JBLocalizer.build/Objects-normal/x86_64/JBFileController.gcda' &#39; /Users/josipbernat/Library/Developer/Xcode/DerivedData/Build/Intermediates/ArchiveIntermediates/JBLocalizerApp/IntermediateBuildFilesPath/JBLocalizer.build/Release/JBLocalizer.build/Objects-normal/x86_64/JBFile.gcda' < / p>
大多数遇到此问题的开发人员都在打开文件 在读/写模式而不是只读模式,在这种情况下它应该 被改为只读。
此问题的其他常见原因包括:
在上述位置创建或编写文件,这些文件不是文档中所述文件的有效位置
在不使用有效的app-id作为书面文件的容器的情况下写入上述位置
请查看App Store的&#34;文件系统使用要求&#34; 提交到Mac App Store以获取允许的位置应用程序 写作和进一步指导。
我真的不确定我的应用程序如何违反对链接到的库的访问权限。有什么建议吗?