验证或提交应用程序存档时 Xcode 6 崩溃
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/25858977/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Xcode 6 crashes when validating or submitting app archive
提问by lotz
This worked fine 2 days ago using the exact same archive and provisioning profile (selected from the organizer). Anyone else seeing this? I haven't updated Xcode, so it seems like it might be something on Apple's end causing a failure?
这在 2 天前使用完全相同的存档和配置文件(从组织者中选择)工作正常。还有人看到这个吗?我还没有更新 Xcode,所以看起来它可能是 Apple 最终导致失败的原因?
Application Specific Information:
ProductBuildVersion: 6A313
ASSERTION FAILURE in /SourceCache/IDEFrameworks/IDEFrameworks-6299/IDEFoundation/Issues/IDEIssueManager.m:457
Details: This method must only be called on the main thread
Object: <IDEIssueManager>
Method: +_issueProviderInfo
Thread: <NSThread: 0x7fa1abfa8e60>{name = (null), num = 44}
Hints: None
Backtrace:
0 0x00000001027adf0a -[IDEAssertionHandler handleFailureInMethod:object:fileName:lineNumber:assertionSignature:messageFormat:arguments:] (in IDEKit)
1 0x000000010156dbaf _DVTAssertionHandler (in DVTFoundation)
2 0x000000010156de9e _DVTAssertionFailureHandler (in DVTFoundation)
3 0x0000000101ea2bce +[IDEIssueManager _issueProviderInfo] (in IDEFoundation)
4 0x0000000101ea224d -[IDEIssueManager _updateIssueProviders] (in IDEFoundation)
5 0x000000010157ffbe __73-[DVTObservingBlockToken observeValueForKeyPath:ofObject:change:context:]_block_invoke (in DVTFoundation)
6 0x00000001014fa6c8 DVTInvokeWithStrongOwnership (in DVTFoundation)
7 0x00000001013ae124 -[DVTObservingBlockToken observeValueForKeyPath:ofObject:change:context:] (in DVTFoundation)
8 0x00007fff8aed8f28 NSKeyValueNotifyObserver (in Foundation)
9 0x00007fff8aed80f8 NSKeyValueDidChange (in Foundation)
10 0x00007fff8aedcbe6 -[NSObject(NSKeyValueObserverNotification) didChangeValueForKey:] (in Foundation)
11 0x00007fff8ddf3f6f doSetValuesInSourceWithKVO (in CoreFoundation)
12 0x00007fff8ddf3e0f _CFXPreferencesReplaceValuesInNamedVolatileSource (in CoreFoundation)
13 0x00007fff8b07fafc -[NSUserDefaults(NSUserDefaults) setVolatileDomain:forName:] (in Foundation)
14 0x00000001124ad9e9 -[NSUserDefaults(ITunesConnectFoundationExtensions) REPLACEMENT_setVolatileDomain:forName:] (in ITunesConnectFoundation)
15 0x00000001124a3fac -[MZJSONServiceClient connectionDidFinishLoading:] (in ITunesConnectFoundation)
16 0x00007fff8af877fd __65-[NSURLConnectionInternal _withConnectionAndDelegate:onlyActive:]_block_invoke (in Foundation)
17 0x00007fff8af8772d -[NSURLConnectionInternal _withConnectionAndDelegate:onlyActive:] (in Foundation)
18 0x00007fff8af8761c -[NSURLConnectionInternal _withActiveConnectionAndDelegate:] (in Foundation)
19 0x00007fff989e9284 ___ZN27URLConnectionClient_Classic26_delegate_didFinishLoadingEU13block_pointerFvvE_block_invoke (in CFNetwork)
20 0x00007fff98a9f820 ___ZN27URLConnectionClient_Classic18_withDelegateAsyncEPKcU13block_pointerFvP16_CFURLConnectionPK33CFURLConnectionClientCurrent_VMaxE_block_invoke_2 (in CFNetwork)
21 0x00007fff989cc2ec ___ZNK17CoreSchedulingSet13_performAsyncEPKcU13block_pointerFvvE_block_invoke (in CFNetwork)
22 0x00007fff8de04a94 CFArrayApplyFunction (in CoreFoundation)
23 0x00007fff989cc1cb RunloopBlockContext::perform() (in CFNetwork)
24 0x00007fff989cc073 MultiplexerSource::perform() (in CFNetwork)
25 0x00007fff989cbea2 MultiplexerSource::_perform(void*) (in CFNetwork)
26 0x00007fff8de395b1 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ (in CoreFoundation)
27 0x00007fff8de2ac62 __CFRunLoopDoSources0 (in CoreFoundation)
28 0x00007fff8de2a3ef __CFRunLoopRun (in CoreFoundation)
29 0x00007fff8de29e75 CFRunLoopRunSpecific (in CoreFoundation)
30 0x00007fff8af38adc -[NSRunLoop(NSRunLoop) runMode:beforeDate:] (in Foundation)
31 0x00007fff8af8110b -[NSRunLoop(NSRunLoop) runUntilDate:] (in Foundation)
32 0x00000001124a3468 -[MZJSONServiceClient getResultDictionary] (in ITunesConnectFoundation)
33 0x00000001124a55da -[MZLabelServiceClient invokeSOAPCall] (in ITunesConnectFoundation)
34 0x00000001124aa904 -[MZWebServiceOperationWorker execute] (in ITunesConnectFoundation)
35 0x00000001124aac02 -[MZWebServiceWorker run] (in ITunesConnectFoundation)
36 0x000000011248336c -[MZWorkItem main] (in ITunesConnectFoundation)
37 0x00007fff8aed78a1 -[__NSOperationInternal _start:] (in Foundation)
38 0x00007fff8aed754b __NSOQSchedule_f (in Foundation)
39 0x00007fff96f8528d _dispatch_client_callout (in libdispatch.dylib)
40 0x00007fff96f897e3 _dispatch_async_redirect_invoke (in libdispatch.dylib)
41 0x00007fff96f8528d _dispatch_client_callout (in libdispatch.dylib)
42 0x00007fff96f87082 _dispatch_root_queue_drain (in libdispatch.dylib)
43 0x00007fff96f88177 _dispatch_worker_thread2 (in libdispatch.dylib)
44 0x00007fff934d0ef8 _pthread_wqthread (in libsystem_pthread.dylib)
45 0x00007fff934d3fb9 start_wqthread (in libsystem_pthread.dylib)
回答by eanticev
Make sure you've accepted all of the new agreements in the Member Center.
确保您已接受会员中心的所有新协议。
To check if you need to, you can go to the preferences -> accounts in XCode, and chose to view detailsof an account and attempt to refreshusing the little button. Here, XCode will warn you that you need to accept new agreements in the Member Center before you can refresh.
要检查是否需要,您可以在 XCode 中转到首选项 -> 帐户,然后选择查看帐户的详细信息并尝试使用小按钮刷新。在这里,XCode 会警告您需要在会员中心接受新协议才能刷新。
On the other hand, the Organizer will just crash instead of warning you about un-signed agreements.
另一方面,组织者只会崩溃,而不是就未签署的协议向您发出警告。
回答by Bagusflyer
I solved the problem by:
我通过以下方式解决了这个问题:
- Export the ipa in organiser
- Using Application Loader to load the ipa to app store
- 在管理器中导出 ipa
- 使用 Application Loader 将 ipa 加载到应用商店
回答by Szuwar_Jr
I found solution/workaround on https://devforums.apple.com/. Post by 優 Yu:
我在https://devforums.apple.com/上找到了解决方案/解决方法。优宇的帖子:
"Open the Organizer by performing Arches. Please close the only xcode body. Please do not close the Organizer screen. Please go and Submit Validation in that state. I'm glad If we can help you."
“通过执行拱门打开管理器。请关闭唯一的 xcode 主体。请不要关闭管理器屏幕。请在该状态下提交验证。如果我们能帮助您,我很高兴。”
Works for me, but after validation I got strange message:
对我有用,但经过验证后,我收到了奇怪的消息:
"The resulting API analysis file is too large. We were unable to validate your API usage prior to delivery. This is just an informational message.".
“生成的 API 分析文件太大。我们无法在交付前验证您的 API 使用情况。这只是一条信息性消息。”。
I ignored it and successfully submitted app to App Store. Looks like Apple broke their validation system, because I submitted an app 5 days ago without any problems.
我忽略了它并成功将应用程序提交到 App Store。看起来苹果破坏了他们的验证系统,因为我 5 天前提交了一个应用程序,没有任何问题。
回答by mr.T
Yes it looks like apple just withdrew the option to upload with XCode 6. Either use XCode 5.1.1 or Applauncher 2.9.1
是的,苹果似乎只是取消了使用 XCode 6 上传的选项。使用 XCode 5.1.1 或 Applauncher 2.9.1
回答by aalesano
Simply Accept the new License and Agreement in developer.apple.com 's Member Center.
只需在 developer.apple.com 的会员中心接受新的许可和协议。
回答by Sean Cheng
I have used bagusflyer's workaround to submit app, but finally I found out how to solve it permanently.
我已经使用 bagusflyer 的解决方法提交应用程序,但最终我找到了永久解决它的方法。
Here is the solution:
这是解决方案:
Accept new changed terms and condition from apple developer account. (Just like Sandeep said)
Go to hereto generate new provision profiles, for App Store & AdHoc (Tutorial)
Double click new provision profiles you downloaded to install them, and then XCode will never crash.
The problem is caused by XCode 6.0 does not handle provision profile migration properly. Developers should regenerate provision profiles for XCode 6+, but Xcode 6.0 fails to display this error message properly and crashes. (If you use XCode 6.1 Beta, it will display error messages for you, no crash. Then you will know that the problem is caused by "invalid"=="legacy" provision profile.)
问题是由于 XCode 6.0 没有正确处理配置文件迁移。开发人员应该为 XCode 6+ 重新生成配置文件,但 Xcode 6.0 无法正确显示此错误消息并崩溃。(如果你使用 XCode 6.1 Beta,它会为你显示错误信息,没有崩溃。然后你就会知道问题是由“无效”==“遗留”配置文件引起的。)
After that, you can submit app and export Ad Hoc distribution for Testflight.
之后,您可以提交应用程序并为 Testflight 导出 Ad Hoc 分发。
回答by de.
I tried all of the other suggestions, no success.
我尝试了所有其他建议,但没有成功。
Finally I removed my AppleID from the accounts preferences pane and re-added it. That did the trick!
最后,我从帐户首选项窗格中删除了我的 AppleID 并重新添加了它。成功了!
Since then, app submission was working again.
从那时起,应用程序提交又开始工作了。
回答by mdanishs
I had multiple projects opened while archiving, closing all others worked.
我在存档时打开了多个项目,关闭了所有其他工作。
回答by abitofcode
4 hours wasted last night with unknown error, didn't even get an error until opened Xcode > Organiser, closed Xcode, then uploaded. Still no joy, moved to Application loader and then hit further errors. Finally upload worked when given the Agent account details, no joy with my Admin account details.
昨晚因未知错误浪费了 4 个小时,直到打开 Xcode > Organizer,关闭 Xcode,然后上传,甚至都没有出现错误。仍然没有喜悦,转移到应用程序加载器,然后遇到更多错误。给定代理帐户详细信息后,终于上传工作了,对我的管理员帐户详细信息不满意。
回答by Alessandro Ornano
These steps works with Xcode 7.x:
这些步骤适用于 Xcode 7.x:
- close Xcode
- launch Disk Utility, make a First Aid to your OSX disk
- open Xcode, go to Window - Project and clean your project Derived Data
- open Window - Organizer
- open Xcode - Preferences - Account and remove and re-add your account
- launch your project
- go to both project and target - Build settings - Build Options (settings) and set "Enable Bitcode" to NO ( if your project don't use bitcode)
- select a real device and build and run your project to the device
- go to product and launch archive
- 关闭 Xcode
- 启动磁盘工具,对您的 OSX 磁盘进行急救
- 打开 Xcode,转到 Window - Project 并清理您的项目派生数据
- 打开窗口 - 管理器
- 打开 Xcode - Preferences - Account 并删除并重新添加您的帐户
- 启动你的项目
- 转到项目和目标 - 构建设置 - 构建选项(设置)并将“启用位码”设置为否(如果您的项目不使用位码)
- 选择一个真实的设备并在设备上构建和运行您的项目
- 转到产品和发布存档