我已更新当前提交的Titanium应用,并使用swift添加了手表扩展程序。
如果我在sim上构建和测试并直接构建到设备上,那么一切正常。当我将应用程序提交到Apple应用程序商店时(通过XCode Organizer),我只会遇到问题。
二进制文件提交,通过验证,但我收到来自iTunes Connect的电子邮件如下:
亲爱的开发人员,
我们发现您最近交付的“xxxxxxxxxxx”存在一个或多个问题。要处理您的交付,必须纠正以下问题:
无效的Swift支持 - 缺少SwiftSupport文件夹。使用当前公共(GM)版本的Xcode重建您的应用程序并重新提交。
一旦纠正了这些问题,您就可以重新更新已更正的二进制文件。
好像它可能与构建设置有关:嵌入式内容包含Swift代码。
如果Titanium项目包含嵌入式Swift,则看起来需要将其设置为是。
截至目前,由于无法提交应用,我陷入困境。这是一个Ti问题还是我应该遵循的另一个步骤?
XCode:7.3,SDK:5.2.2.GA - 仅使用Ti CLI创建和构建的项目。
答案 0 :(得分:3)
首先,您应该通过
检查.ipa文件unzip yourapp.ipa
如果仅存在Payload
,则Apple拒绝您的应用。
您应该创建SwiftSupport/iphoneos
目录并输入相应的目录
swift库文件。
通过选中Payload/yourapp.app/Framesworks
,您可以了解哪些库是必需的。但是此库文件不能用作SwiftSupport/iphoneos
。
您必须从mac的/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/iphoneos
目录中复制相应的库。文件名与上面的Payload/yourapp.app/Frameworks
相同,但内容不同。
获得Payload
和SwiftSupport
目录后,请按
$ zip -r yournewapp.ipa Payload SwiftSupport
(备注:删除所有.DS_Store
文件(如果存在)
然后Apple访问yournewapp.ipa
。
答案 1 :(得分:1)
供将来参考:我必须通过Xcode存档Titanium项目,因为我的一个第三方库要求在构建阶段执行脚本。
收到来自Apple的相同消息,幸运的是修复了它只是将嵌入式内容包含Swift代码更改为否。
答案 2 :(得分:0)
此问题现已解决,有一个新版本的Titanium SDK,6.0.1.GA专门针对此问题进行了修复。我现在已经创建,提交并拥有一个Titanium应用程序,该应用程序现已在应用程序商店中发布。
答案 3 :(得分:0)