2013-10-08 41 views
3

我一直在尝试在过去2周内更新iOS客户端应用程序,不幸的是,它已被拒绝两次,因为Apple称它在iOS7上崩溃。苹果向我发送了下面的崩溃报告。iOS应用程序在Apple审批过程中崩溃,但不适合我

Incident Identifier: C213974C-73E2-42C4-A2AA-E4C2A454319E 
CrashReporter Key: 2c5d5176cc4387265bd86c427bf138d2b0acfe38 
Hardware Model:  xxx 
Process:    Twlight Sports [502] 
Path:    /var/mobile/Applications/2B9ED7B5-787E-48ED-AAEC-3DEF87A86C67/Twlight Sports.app/Twlight Sports 
Identifier:   com.twilightsports.twilightsports 
Version:    1.2 (1.2) 
Code Type:   ARM (Native) 
Parent Process:  launchd [1] 

Date/Time:   2013-09-27 15:22:18.784 -0700 
OS Version:   iOS 7.0 (11A465) 
Report Version:  104 

Exception Type: EXC_BREAKPOINT (SIGTRAP) 
Exception Codes: 0x0000000000000001, 0x00000000e7ffdefe 
Triggered by Thread: 0 

Dyld Error Message: 
    Library not loaded: /Developer/Library/Frameworks/SenTestingKit.framework/SenTestingKit 
    Referenced from: /var/mobile/Applications/2B9ED7B5-787E-48ED-AAEC-3DEF87A86C67/Twlight Sports.app/Twlight Sports 
    Reason: image not found 
    Dyld Version: 324 

Binary Images: 
0x2beed000 - 0x2bf0d78a dyld armv7 <b37cba000c7d3f8ea414f060d45ce144> /usr/lib/dyld 

我除去SenTestingKit所有引用在我的项目,并再次提交的应用程序更新。一周后,我收到了苹果公司的完全相同的崩溃报告。

然后我创建了一个AdHoc非常与我发送给苹果公司的相同二进制文件,并将其部署到我的iPhone 4S和iPad 2上。两款设备均可正常工作而不会崩溃。

我已经上诉拒绝希望苹果再次测试应用程序,但他们拒绝了上诉,只是声称它仍然崩溃,并没有提供任何帮助。目前我处于亏损状态,因为我无法复制崩溃,因此无法修复。

我也有CocoaPods在我的工作区运行,安装了Kiwi TDD窗格。这有引用但引用生成目标没有SenTestingKit.framework链接二进制库No SenTestingKit framework

+0

我不能为您提供任何帮助,只是这个描述。您可能需要张贴您的Xcode构建设置和构建包的一些屏幕截图 – vodkhang

+1

目前还不清楚您希望这里的任何人如何帮助您获取有限的信息。 – trojanfoe

+1

你是否也在iOS7上测试过它? –

回答

0

我面临类似的问题,应用程序在我的设备中工作正常,但被苹果拒绝。 这是说包中的某个文件已损坏。 当我为所有用户设置读取,写入和执行的权限并再次提交应用程序时,它已被批准。 这可能是你的情况之一。请尝试设置权限并重新创建二进制文件并提交。

+0

感谢您的回应,是否可以在XCode中设置此权限,我不确定在哪里查找 –

+0

这些是您可以通过chmod -R 777 <项目文件夹>设置的权限。它与我们在linux – Kapil

1

您发布的信息是非常有限的,但是我会跟下面的步骤开始:

  1. 您xxx'ed硬件型号,但坠机可能是特定的硬件,它可以在只发生你没有测试的硬件。
  2. 与os一样,您可能已经在7.0.1或7.0.2上进行了测试,但根据崩溃报告,它发生在7.0上,因此请确保您对此进行测试。
  3. 帮你一个忙,并开始使用TestFlight进行崩溃报告,你不必依赖发送你崩溃报告的人,相反,崩溃报告会自动发送给你并用符号表示。
  4. 当您在硬件上测试您的应用程序时,请确保您测试了发行配置。在发布版本进行优化时,有很多事情可能会出错,因此测试版本是唯一明智的选择。
  5. 验证过程中是否收到任何警告?如果是的话,也许你应该认真对待他们?

我认为应用程序不会启动,但会在启动时崩溃。在这种情况下,我不确定TestFlight是否会对您有所帮助,相反,我认为您的Debug和Release配置可能会导致SenTestKit被以后使用。

+0

中设置的类似,感谢您的响应,我已经尝试过使用Testflight进行AdHoc部署,但它仍然没有崩溃,我不知道如何将7.0.2设备降级到7.0,如果这是可能我可以试试。我验证的唯一警告是我没有提供推荐用于iOS7的150x150图标,我会尝试在iPad 3上以及 –

2

您可以重新提交知道它是否链接SenTestingKit之前otool检查您的应用程序二进制文件。 otool -L将列出Mach-O二进制文件的链接库。

例如,Xcode的链接:

% otool -L /Applications/Xcode.app/Contents/MacOS/Xcode                    
/Applications/Xcode.app/Contents/MacOS/Xcode: 
    /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa (compatibility version 1.0.0, current version 20.0.0) 
    @rpath/DVTFoundation.framework/Versions/A/DVTFoundation (compatibility version 1.0.0, current version 3532.0.0) 
    @rpath/DVTKit.framework/Versions/A/DVTKit (compatibility version 1.0.0, current version 3546.0.0) 
    @rpath/IDEFoundation.framework/Versions/A/IDEFoundation (compatibility version 1.0.0, current version 3569.0.0) 
    @rpath/IDEKit.framework/Versions/A/IDEKit (compatibility version 1.0.0, current version 3591.0.0) 
    /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation (compatibility version 300.0.0, current version 1052.0.0) 
    /usr/lib/libobjc.A.dylib (compatibility version 1.0.0, current version 228.0.0) 
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1197.1.1) 
    /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit (compatibility version 45.0.0, current version 1247.0.0) 

您可以通过创建一个应用程序商店建立,复制.ipa到一个文件夹上的某个地方你的应用程序商店的二进制运行此。将.ipa重命名为.zip。打开.zip文件,然后在内部应用程序二进制运行otool -L,大概是这样的:(这是iBooks的)

% cd iBooks\ 3.1.3/Payload/iBooks.app                          
% otool -L iBooks                               
iBooks: 
    /usr/lib/liblockdown.dylib (compatibility version 1.0.0, current version 1.0.0) 
    /System/Library/Frameworks/StoreKit.framework/StoreKit (compatibility version 1.0.0, current version 1.0.0) 
    /System/Library/PrivateFrameworks/Celestial.framework/Celestial (compatibility version 1.0.0, current version 1.0.0) 
    /System/Library/Frameworks/AssetsLibrary.framework/AssetsLibrary (compatibility version 1.0.0, current version 1.0.0) 
    /System/Library/Frameworks/Foundation.framework/Foundation (compatibility version 300.0.0, current version 992.0.0) 
    /System/Library/Frameworks/UIKit.framework/UIKit (compatibility version 1.0.0, current version 2372.0.0) 
    /System/Library/Frameworks/CoreGraphics.framework/CoreGraphics (compatibility version 64.0.0, current version 600.0.0) 
    /System/Library/PrivateFrameworks/iTunesStoreUI.framework/iTunesStoreUI (compatibility version 1.0.0, current version 1.0.0) 
    /System/Library/Frameworks/MediaPlayer.framework/MediaPlayer (compatibility version 1.0.0, current version 1.0.0) 
    /System/Library/PrivateFrameworks/iTunesStore.framework/iTunesStore (compatibility version 1.0.0, current version 1.0.0) 
    /System/Library/PrivateFrameworks/StoreServices.framework/StoreServices (compatibility version 1.0.0, current version 1.0.0) 
    /System/Library/Frameworks/QuartzCore.framework/QuartzCore (compatibility version 1.2.0, current version 1.8.0) 
    /System/Library/PrivateFrameworks/GraphicsServices.framework/GraphicsServices (compatibility version 1.0.0, current version 14.0.0) 
    /System/Library/PrivateFrameworks/AppSupport.framework/AppSupport (compatibility version 1.0.0, current version 29.0.0) 
    /System/Library/PrivateFrameworks/WebKit.framework/WebKit (compatibility version 1.0.0, current version 536.26.0) 
    /System/Library/Frameworks/CoreData.framework/CoreData (compatibility version 1.0.0, current version 419.0.0) 
    /System/Library/PrivateFrameworks/JavaScriptCore.framework/JavaScriptCore (compatibility version 1.0.0, current version 536.26.0) 
    /System/Library/Frameworks/CFNetwork.framework/CFNetwork (compatibility version 1.0.0, current version 609.0.0) 
    /System/Library/PrivateFrameworks/WebCore.framework/WebCore (compatibility version 1.0.0, current version 536.26.0) 
    /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit (compatibility version 1.0.0, current version 275.0.0) 
    /System/Library/PrivateFrameworks/Bom.framework/Bom (compatibility version 2.0.0, current version 189.0.0) 
    /usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.5) 
    /System/Library/Frameworks/CoreText.framework/CoreText (compatibility version 1.0.0, current version 1.0.0) 
    /usr/lib/libAccessibility.dylib (compatibility version 1.0.0, current version 1.0.0) 
    /System/Library/Frameworks/MobileCoreServices.framework/MobileCoreServices (compatibility version 1.0.0, current version 40.0.0) 
    /usr/lib/libsqlite3.dylib (compatibility version 9.0.0, current version 9.6.0) 
    /System/Library/Frameworks/MessageUI.framework/MessageUI (compatibility version 1.0.0, current version 1.0.0) 
    /System/Library/Frameworks/AVFoundation.framework/AVFoundation (compatibility version 1.0.0, current version 2.0.0) 
    /System/Library/Frameworks/ImageIO.framework/ImageIO (compatibility version 1.0.0, current version 1.0.0) 
    /System/Library/Frameworks/SystemConfiguration.framework/SystemConfiguration (compatibility version 1.0.0, current version 499.0.0) 
    /System/Library/Frameworks/Security.framework/Security (compatibility version 1.0.0, current version 1.0.0) 
    /System/Library/Frameworks/AudioToolbox.framework/AudioToolbox (compatibility version 1.0.0, current version 359.0.0) 
    /usr/lib/libicucore.A.dylib (compatibility version 1.0.0, current version 49.1.0) 
    /usr/lib/libobjc.A.dylib (compatibility version 1.0.0, current version 228.0.0) 
    /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 56.0.0) 
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 173.8.0) 
    /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation (compatibility version 150.0.0, current version 793.0.0) 

然后在列表中为您的应用程序的二进制寻找SenTestingKit

+0

感谢您的回复我会给出一个问题,如果问题再次出现 –

1

嘛.....

要解决这个问题,我基本上从我的工作区中删除的CocoaPods,删除测试目标和测试方案,我resubmited应用上周四,它刚刚今天接受。

这是一个相当绝望的尝试修复,我认为罪魁祸首是苹果在我的项目上运行测试方案,我没有正确设置。删除猕猴桃Cocoapods看起来像它修复任何请求SenTestingKit框架

+0

很高兴听到它被批准,同时很遗憾你必须删除这些东西,因为我非常确定你已经提交了应用程序的DEBUG版本。如果是这种情况,应该足以将存档方案更改为使用“发布”而不是“调试”。希望这会在未来帮助你。 – lawicko

+0

我建议将此信息添加到您的文章的末尾作为更新,而不是作为答案。 – cbowns