2012-01-04 18 views
0

私が読んだことから、このトピックはここ数年間で何度か出てきましたが、通常は非常に曖昧な回答があります。 1年以上経ちましたので、進歩があることを期待しています。Iphone/IOS - アプリケーションのクラッシュをデバッグする

とにかく、私は現在、IOS 5.0.1がインストールされたIphone 4を持っており、App Storeからインストールされたほとんどのアプリケーションがスプラッシュ画面でクラッシュするという問題を抱えています。 App Storeからランダムなアプリケーションをインストールしたり、アプリケーションを再インストールしたり、電話機を完全に復元したりすると、この問題は解決しますが、これ以上の効果はないようです(これらの提案のほとんどはIOS 4と3、5ではなく)。

私がしたことは、問題の原因を見つけることだけです。私はクラッシュのための私の例として人気のあるよく知られているアプリUrbanSpoonを使用します。以下はUrbanSpoonを実行しようとした後のsyslogとクラッシュレポートです。私がそれらから理解できるところからは、IOSがどのようにアプリケーションをサンドボックスにしているのかとは関係がありますが、クラッシュの原因となる部分が具体的に分かっているのはわかりません。

これらの回答がこの問題を抱えているすべての人に恩恵を受けることを願って、これについての助力を非常に感謝しています。

シスログ:

(はUrbanspoonは、最初のアプリケーションの最後の言及に実行されたときから、ログファイルから切り取ら)

EDIT: syslogはここ、ここに投稿することは大きすぎるへのリンクです代わりに。 http://dl.dropbox.com/u/9235267/MyiPhoneSysLogForUrbanSpoon.txt

はUrbanspoonのためのクラッシュレポート:

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 
<plist version="1.0"> 
<dict> 
    <key>AutoSubmitted</key> 
    <true/> 
    <key>SysInfoCrashReporterKey</key> 
    <string>38f6d9c3d504f902f8dbae968517559766e3092d</string> 
    <key>bug_type</key> 
    <string>109</string> 
    <key>description</key> 
    <string>Incident Identifier: 568DB2CE-F9A2-47A7-A427-B5C4DF6A09D0 
CrashReporter Key: 38f6d9c3d504f902f8dbae968517559766e3092d 
Hardware Model:  iPhone3,1 
Process:   urbanspin [282] 
Path:   /var/mobile/Applications/42579EAA-3CD0-4B2B-BFF5-5EB1C9297207/urbanspin.app/urbanspin 
Identifier:  urbanspin 
Version:   ??? (???) 
Code Type:  ARM (Native) 
Parent Process: launchd [1] 

Date/Time:  2012-01-04 13:22:22.479 -0500 
OS Version:  iPhone OS 5.0.1 (9A405) 
Report Version: 104 

Exception Type: 00000020 
Exception Codes: 0x8badf00d 
Highlighted Thread: 0 

Application Specific Information: 
com.urbanspoon.urbanspin failed to launch in time 

Elapsed total CPU time (seconds): 20.580 (user 20.580, system 0.000), 100% CPU 
Elapsed application CPU time (seconds): 0.511, 2% CPU 

Thread 0: 
0 ???        0x34a7f110 0 + 883421456 
1 Foundation      0x32356c92 0x32350000 + 27794 
2 AnyRingLib.dylib    0x00379a3e 0x377000 + 10814 
3 dyld       0x2febdf80 0x2feb1000 + 53120 
4 dyld       0x2febdbcc 0x2feb1000 + 52172 
5 dyld       0x2febb7d0 0x2feb1000 + 42960 
6 dyld       0x2febc790 0x2feb1000 + 46992 
7 dyld       0x2feb35c0 0x2feb1000 + 9664 
8 dyld       0x2feb9106 0x2feb1000 + 33030 
9 ???        0x3367b5a4 0 + 862434724 
10 SubstrateLoader.dylib   0x000d46ae 0xd3000 + 5806 
11 SubstrateLoader.dylib   0x000d4828 0xd3000 + 6184 
12 dyld       0x2febdece 0x2feb1000 + 52942 
13 dyld       0x2febdbd4 0x2feb1000 + 52180 
14 dyld       0x2febb7d0 0x2feb1000 + 42960 
15 dyld       0x2febc790 0x2feb1000 + 46992 
16 dyld       0x2feb35c0 0x2feb1000 + 9664 
17 dyld       0x2feb9106 0x2feb1000 + 33030 
18 ???        0x3367b5a4 0 + 862434724 
19 MobileSubstrate.dylib   0x0009aea0 0x9a000 + 3744 
20 dyld       0x2febdece 0x2feb1000 + 52942 
21 dyld       0x2febdbd4 0x2feb1000 + 52180 
22 dyld       0x2febb7d0 0x2feb1000 + 42960 
23 dyld       0x2febc790 0x2feb1000 + 46992 
24 dyld       0x2feb39f0 0x2feb1000 + 10736 
25 dyld       0x2feb7b80 0x2feb1000 + 27520 
26 dyld       0x2feb22ca 0x2feb1000 + 4810 
27 dyld       0x2feb205c 0x2feb1000 + 4188 

Thread 1: 
0 ???        0x34a7e3b4 0 + 883418036 
1 ???        0x34beab98 0 + 884911000 
2 ???        0xfffffffc 0 + -4 

Thread 2: 
0 ???        0x34a8ecd4 0 + 883485908 
1 ???        0x3626d0a0 0 + 908513440 

Thread 3: 
0 ???        0x34a8ecd4 0 + 883485908 
1 ???        0x3626d0a0 0 + 908513440 

Unknown thread crashed with unknown flavor: 5, state_count: 1 

Binary Images: 
    0x1000 - 0x74fff +urbanspin armv7 &lt;0b3e8cdf11113d1abf4c0d83ef1a3ebe&gt; /var/mobile/Applications/42579EAA-3CD0-4B2B-BFF5-5EB1C9297207/urbanspin.app/urbanspin 
    0x9a000 - 0x9afff +MobileSubstrate.dylib armv6 &lt;cf2cce379dcd3a4c970e3196b908b0b6&gt; /Library/MobileSubstrate/MobileSubstrate.dylib 
    0xd3000 - 0xd4fff +SubstrateLoader.dylib armv6 &lt;30381ec9e24c3c289f447bf428bda2c1&gt; /Library/Frameworks/CydiaSubstrate.framework/Libraries/SubstrateLoader.dylib 
    0xf7000 - 0xfafff libsubstrate.dylib armv6 &lt;d375337d03a7324c9cfb608b7231eeea&gt; /usr/lib/libsubstrate.dylib 
    0x300000 - 0x311fff +ActionMenu.dylib armv6 &lt;62581e9bc0d93ef2ab8175cd5e337e62&gt; /Library/MobileSubstrate/DynamicLibraries/ActionMenu.dylib 
    0x318000 - 0x321fff +Activator.dylib armv6 &lt;53595f5e871d3d7eac4f8e945b039de3&gt; /Library/MobileSubstrate/DynamicLibraries/Activator.dylib 
    0x329000 - 0x365fff +AdBlocker.dylib armv6 &lt;07089bfdb5563a33bee5fc772477dd33&gt; /Library/MobileSubstrate/DynamicLibraries/AdBlocker.dylib 
    0x377000 - 0x396fff +AnyRingLib.dylib armv6 &lt;98857b11e0d73e13dfb59d83ed186a0e&gt; /Library/MobileSubstrate/DynamicLibraries/AnyRingLib.dylib 
0x2feb1000 - 0x2fed2fff dyld armv7 &lt;be7c0b491a943054ad12eb5060f1da06&gt; /usr/lib/dyld 
0x31933000 - 0x31a78fff CoreGraphics armv7 &lt;641fb6e558f239588a8bd05dbefff99a&gt; /System/Library/Frameworks/CoreGraphics.framework/CoreGraphics 
0x32350000 - 0x324cefff Foundation armv7 &lt;ce466f428d953caaac6641d186665809&gt; /System/Library/Frameworks/Foundation.framework/Foundation 
0x362fd000 - 0x363edfff QuartzCore armv7 &lt;ff595b1a042933249466e92433e1af6f&gt; /System/Library/Frameworks/QuartzCore.framework/QuartzCore 
0x36d54000 - 0x371edfff UIKit armv7 &lt;97b527cd6fba35c6bb39263e0f362223&gt; /System/Library/Frameworks/UIKit.framework/UIKit 
0x378d1000 - 0x3791cfff CoreLocation armv7 &lt;b640873565a03e45a7d4c38d1b5abade&gt; /System/Library/Frameworks/CoreLocation.framework/CoreLocation 
</string> 
    <key>displayName</key> 
    <string>urbanspin</string> 
    <key>name</key> 
    <string>urbanspin</string> 
    <key>os_version</key> 
    <string>iPhone OS 5.0.1 (9A405)</string> 
    <key>system_ID</key> 
    <string></string> 
    <key>version</key> 
    <string>??? (???)</string> 
</dict> 
</plist> 

答えて

1

ライン:「アプリケーションが時間通りに起動に失敗しました」全部の根のように思えます。これは、アプリケーションが起動時に-applicationDidFinishLaunchingWithOptionsメソッドであまりにも多くの作業を行っていることを意味します。 100%のCPU使用率で高負荷時間を組み合わせると、アプリは良い中国の店で荒れ狂う雄牛のように見えます。そして、それらは、OSが殺すことを愛するアプリの種類です。

+0

これは実際にはCPUが使い果たされてからタイムアウトしていますか? – user1130601

+0

さて、すべてのアプリのオープニング機能(-applicationDidFinishLaunchingWithoptions)。できるだけ早く退出する必要があります。そうでなければ、wait_fenceがトリガされます。 20秒は長すぎて、アプリが起動機能をオーバーロードしていることを意味します。 100%のCPU使用量は、ケーキのアイシングにすぎませんでした。 – CodaFi

+0

意味があります。私はちょうどすべてのアプリケーションストアアプリケーションがこの問題をどのように持っているのか奇妙なことを知っている、私はちょうど例としてアーバンスプーンを使用しましたが、それはこの問題を持つすべてのアプリケーションストアアプリです。リソースアプリケーションに重いものも軽いものもあります。 – user1130601

関連する問題