Apple拒绝了我,不明白为什么,或者如何解决它

Sam*_*man 8 iphone crash logging

所以这个故事,苹果最近拒绝了我的应用程序,说它在手机上崩溃了(iPhone 3G和ipod touch 2g),并发给我两个崩溃日志.我从中可以理解其中的任何一个.

他们来了.

 Incident Identifier: BA4382DD-DA6A-47F7-800D-43AD30919064
 CrashReporter Key:   53e41ca2a52f91affddc86f49ce9c4be851fcfd6
 OS Version:          iPhone OS 3.1.2 (7D11)
 Date:                2010-01-14 15:59:57 -0800

Free pages:        317
Wired pages:       11274
Purgeable pages:   0
Largest process:   iConicCars

Processes
         Name                 UUID                    Count resident pages
       amfid <b4f3e5a61456edf85b6ada59064ec311>      93
  iConicCars <851d264eb074e465891dcd67b67a8e79>    5928 (jettisoned) (active)
  MobileMail <0798395dde43ca46317db6e674dfbbfd>     503 (jettisoned)
 MobilePhone <82c9bd8583f4b09706a16b08e641a4b9>     464 (jettisoned)
     notifyd <d6b12a4e424e10e5ce91efd8d39f22af>      77
    BTServer <c940c4c7252113a7303cc1f7d1429c17>     253
  CommCenter <b1d6c4fe3ce2bc0374471196ab15b8d4>     313
 SpringBoard <c5c29b56a2bb445fc73203e03f67fa78>    1954 (active)
  accessoryd <32ceed5c3c32625ac23cd870f61364af>     107
     configd <aae411e8289912124271f109ceee8f85>     290
   fairplayd <cdce5393153c3d69d23c05de1d492bd4>     156
   mDNSResponder <db98efaea94329959789f73a16f9f46e>     123
mediaserverd <612fbbfa0546609cf6c6b13ae6f333cf>     767 (jettisoned)
   lockdownd <171865bfe3725c3d5047df8c00ed5d77>     294
     syslogd <1cb3e9f2375fad9e345bd16655be4a50>      66 (jettisoned)
     launchd <c5bc115d47313218505394f96770782a>      76

**End**

Incident Identifier: 8E52889B-0260-4AAD-A39C-FC170FB637D4
CrashReporter Key:   45d118e8a4be9b3163eab905af870f05dfddb12d
OS Version:          iPhone OS 3.1.2 (7D11)
Date:                2010-01-14 13:41:31 -0800

Free pages:        309
Wired pages:       12550
Purgeable pages:   0
Largest process:   iConicCars

Processes
         Name                 UUID                    Count resident pages
      iConicCars <851d264eb074e465891dcd67b67a8e79>    5641 (jettisoned) (active)
       SCHelper <b87bd080a670f9512426e8721dc1f03c>     103
            misd <a41e5d5f4b8922ab272c55df84aec4fd>     140
    installd <620ede129454bcd824f0b6cec13b15d3>     212
 SpringBoard <c5c29b56a2bb445fc73203e03f67fa78>    1545 (jettisoned) (active)
        iapd <fea164e93479b90e1dd39a293dd3865c>     251 (jettisoned)
     syslogd <1cb3e9f2375fad9e345bd16655be4a50>      83 (jettisoned)
mediaserverd <612fbbfa0546609cf6c6b13ae6f333cf>     302 (jettisoned)
    BTServer <c940c4c7252113a7303cc1f7d1429c17>     345
   lockdownd <171865bfe3725c3d5047df8c00ed5d77>     279
     notifyd <d6b12a4e424e10e5ce91efd8d39f22af>     104
  CommCenter <b1d6c4fe3ce2bc0374471196ab15b8d4>     151
     configd <aae411e8289912124271f109ceee8f85>     264
   fairplayd <cdce5393153c3d69d23c05de1d492bd4>     517
   mDNSResponder <db98efaea94329959789f73a16f9f46e>     100
     launchd <c5bc115d47313218505394f96770782a>      67

**End**
Run Code Online (Sandbox Code Playgroud)

他们说,即使重启后,也没有区别.继承人,它在我的iPhone 3GS上完美运行,在模拟器中没有内存泄漏.

那么,我到底做了什么?

更新:

在模拟器中登录[会话开始于2010-01-16 20:01:44 +1300.] GNU gdb 6.3.50-20050815(Apple版本gdb-1346)(2009年9月18日星期五20:40:51)版权所有2004 Free Software Foundation,Inc.GDB是免费软件,受GNU通用公共许可证保护,欢迎您在特定条件下更改和/或分发它.输入"show copying"查看条件.GDB完全没有保修.输入"show warranty"了解详情.此GDB配置为"x86_64-apple-darwin".sharedlibrary apply-load-rules all附加到进程1152. dyld:无法加载插入的库:/usr/lib/libgmalloc.dylib

数据格式化程序暂时不可用,将在"继续"后重试.(目前无法调入加载程序,它被锁定.)警告:无法找到"_sigtramp"的最小符号 - 回溯可能不可靠无法访问地址0x0处的内存无法访问地址0x0处的内存(gdb)

ACB*_*urk 5

请参阅"免费页面:309"?不好,意味着你正在使用一堆内存然后当它全部使用它崩溃.可清除页面= 0是无法回收的内存,因此它是内存问题.

执行"构建和分析"并运行"泄漏"以查找内存泄漏和可以更有效地运行的位置.


Ken*_*ner 5

正如其他人所说,你使用的内存太多了.

如果您使用多页视图控制器,请尝试这个简单的测试 - 使用ObjectAlloc仪器运行您的应用程序.点击某个东西来显示一个子视图,你应该看到你的内存增加 - 现在忽略该视图并返回主视图,内存应该下降.如果没有,那就是你的问题(或者其中一个问题,但这是一个可能的起点).

要尝试跟踪此情况,请在每个视图控制器的dealloc中放置断点,并查看实际调用的内容.对于未按预期发布的视图控制器,在ObjectAlloc中,您可以看到每个保留对象的发布位置,并确定在不应该保留对象时保留对象的内容.

通常,ObjectAlloc流应该看起来像一个一直上下的图形,而不是不断上升.

此外,如果您使用大量图像,请考虑将其重新调整为您需要的确切尺寸,而不是从更大的尺寸和缩放开始.使用那么多内存必须是因为使用图像而不是释放它们.如果您仍然提到要保留的内存,则泄漏不会报告任何内容.

另外,购买旧款Touch进行测试.