8

クラッシュが発生しました。問題を見つけて修正する方法についてアドバイスをいただければ幸いです。ゲームは単にシャットダウンします。アプリがアタッチされてデバッガーで実行されている場合、「通常の」クラッシュのように理由を示すデバッグ出力はありません。LoadViewの最後にあるNSLogが最後の出力であるため、LoadViewの後に発生することはわかっています毎回画面。以下は、オーガナイザーからの限定的なクラッシュレポートです(デバッガーで実行されていたため、「不明な」プロセスだと思いますか?)これはios6でのみ発生し始めました。完全に信頼できるかどうかはわかりませんが、機器によるとメモリリークはないようです。ゲームをしばらくプレイして画面を行ったり来たりすると、クラッシュが発生する傾向があるため、リークのように感じます。ただし、常に同じ画面に戻る場合は、そのViewControllerに問題があることを示しています。rpagesが正確に何であるかはわかりませんし、90974が大きすぎるかどうかもわかりません。

Incident Identifier: 7D34217C-9F8E-49B0-B399-1F5573355F31
CrashReporter Key:   29ce6ea76874d5a03d826014a1f50e1a2160db41
Hardware Model:      iPhone3,1
OS Version:          iPhone OS 6.0 (10A403)
Kernel Version:      Darwin Kernel Version 13.0.0: Sun Aug 19 00:27:34 PDT 2012; root:xnu-2107.2.33~4/RELEASE_ARM_S5L8930X
Date:                2012-10-30 22:48:15 -0700
Time since snapshot: 206 ms

Free pages:        958
Active pages:      2673
Inactive pages:    2118
Throttled pages:   101092
Purgeable pages:   0
Wired pages:       22186
Largest process:   MyCrashingApp

Processes
 Name                    <UUID>                       rpages       recent_max       [reason]          (state)

  MobileMail <bff817c61ce33c85a43ea9a6c98c29f5>         1165             1165         [vm]         (resume) (continuous)
  MobilePhone <3fca241f2a193d0fb8264218d296ea41>        898              898         [vm]         (resume) (continuous)
  tccd <eb5ddcf533663f8d987d67cae6a4c4ea>               119              119         [vm]         (daemon)
  MyCrashingApp <f6c54a2392523abe8745d853870bf985>      90974            90974         [vm]         (audio) (frontmost) (resume)
  ptpd <04a56fce67053c57a7979aeea8e5a7ea>               665              665                      (daemon)
  locationd <892cd1c9ffa43c99a82dba197be5f09e>          1237             1237                      (daemon)
  dataaccessd <2a3f6a518f3f3646bf35eddd36f25005>        614              614                      (daemon)
  mediaserverd <80657170daca32c9b8f3a6b1faac43a2>       1316             1316                      (daemon)
  syslogd <cbef142fa0a839f0885afb693fb169c3>            139              139                      (daemon)
  wifid <9472b090746237998cdbb9b34f090d0c>              284              284                      (daemon)
  iaptransportd <f784f30dc09d32078d87b450e8113ef6>      192              192                      (daemon)
  SpringBoard <27372aae101f3bbc87804edc10314af3>        3477             3477                     
  backboardd <5037235f295b33eda98eb5c72c098858>         9957             9957                      (daemon)
  aggregated <8c3c991dc4153bc38aee1e841864d088>         75               75                      (daemon)
  BTServer <c92fbd7488e63be99ec9dbd05824f5e5>           198              198                      (daemon)
  configd <4245d73a9e96360399452cf6b8671844>            897              897                      (daemon)
  fairplayd.N90 <3ac48d9cfb143757bccce4fe6c154533>      135              135                      (daemon)
  fseventsd <996cc4ca03793184aea8d781b55bce08>          315              315                      (daemon)
  imagent <1e68080947be352590ce96b7a1d07b2f>            528              528                      (daemon)
  mDNSResponder <3e557693f3073697a58da6d27a827d97>      237              237                      (daemon)
  lockdownd <ba1358c7a8003f1b91af7d5f58dd5bbe>          207              207                      (daemon)
  powerd <2d2ffed5e69638aeba1b92ef124ed861>             123              123                      (daemon)
  UserEventAgent <6edfd8d8dba23187b05772dcdfc94f90>     427              427                      (daemon)
  debugserver <185719f06f1631d4922c652bdd4c8529>        0                0                      (daemon)
  gputoolsd <889065a15ba8372ca533e023c10bd776>          0                0                      (daemon)
  springboardservi <ff6f64b3a21a39c9a1793321eefa5304>   0                0                      (daemon)
  syslog_relay <45e9844605d737a08368b5215bb54426>       0                0                      (daemon)
  syslog_relay <45e9844605d737a08368b5215bb54426>       0                0                      (daemon)
  DTMobileIS <23303ca402aa3705870b01a9047854ea>         0                0                      (daemon)
  afcd <b0aff2e7952e34a9882fec81a8dcdbb2>               120              120                      (daemon)
  notification_pro <845b7beebc8538ca9ceef731031983b7    118              118                      (daemon)
  filecoordination <fbab576f37a63b56a1039153fc1aa7d8>   115              115                      (daemon)
  distnoted <a89af76ec8633ac2bbe99bc2b7964bb0>          101              101                      (daemon)
  apsd <94d8051dd5f5362f82d775bc279ae608>               280              280                      (daemon)
   networkd <0032f46009f53a6c80973fe153d1a588>          147              147                      (daemon)
   CommCenterClassi <c82f228b14a830cdb88e3cc1068330b3>  616              616                      (daemon)
   notifyd <51c0e03da8a93ac8a595442fcaac531f>           167              167                      (daemon)
   ReportCrash <8c32f231b2ed360bb151b2563bcaa363>       135              135                      (daemon)

終わり

4

1 に答える 1

36

iOSの低メモリ状態ハンドラーであるJetsam(別名memorystatus)がアプリを強制終了するため、アプリがクラッシュします(これは、LinuxのOOMおよびAndroidのLowMemory Killerに似ています)。表示されているのはメモリスナップショットです。説明させてください:

空きページ:958-空き物理メモリの量(4Kの倍数)
アクティブなページ:2673-最近使用された物理メモリのページ数
非アクティブなページ:2118-物理メモリ内の最近使用されていないページの数
スロットルされたページ:101092-スロットリングの対象となるページの数(長い話、ここでは無関係)
パージ可能なページ:0-メモリ不足の状態でキックアウトできるページ数  
有線ページ:22186-主にカーネル目的または共有ライブラリのために、常駐ロックされているページの数

あなたのアプリには、(他のアプリと比較して桁違いに)最も多くの常駐メモリを持っているという不幸で疑わしい名誉があります。したがって、メモリ不足の状態が発生した場合(一部のアプリmalloc()は大きなチャンクを必要とし、十分な空きページが残っていない場合)、Jetsamは単にトップメモリ​​とブームを選択します。Kill -9。したがって、デバッグダンプなどはありません。iOSにはスワップがないため、スワップ上のプロセスをダンプしてメモリをクリアする方法はありません。唯一の方法は外に出ることです。死。

あなたがそれについてできること:

Jetsamがあなたを殺す前に、通常、イベントを介したメモリ不足の通知があります。これは、Obj-Cランタイムがに変換されます-didReceiveMemoryWarning。だからそれを処理します。あなたが説明していることから、あなたはまたを解放したいかもしれませんUIView。それらは多くのメモリを消費します。

于 2012-10-31T14:16:10.967 に答える