2012-01-15 11 views
5

iPhoneとiPod TouchでiOS 3.0以降のアプリを終了します。 iOS4.0上で正常に動作し、最大が、私は起動画像のショーのiOS 3.0を実行しているし、私は次のように会ったんだ第二世代のiPod Touchでそれをバックテストするときだ:iOSとunaviving xibファイル

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[NSKeyedUnarchiver initForReadingWithData:]: incomprehensible archive (0x4e, 0x49, 0x42, 0x41, 0x72, 0x63, 0x68, 0x69)' 
2012-01-15 09:35:53.025 MyApp[3026:207] Stack: (
    808001701, 
    805397928, 
    807551015, 
    807550919, 
    810902709, 
    815043196, 
    815042704, 
    814682908, 
    814682012, 
    814970032, 
    814968048, 
    814966908, 
    839149932, 
    807750263, 
    807747947, 
    814678868, 
    814672532, 
    61527, 
    10764 
) 
terminate called after throwing an instance of 'NSException' 
(gdb) backtrace 
#0 0x31dd594c in __kill() 
#1 0x31dd5940 in kill() 
#2 0x31dd5934 in raise() 
#3 0x31deccfe in abort() 
#4 0x374ef848 in __gnu_cxx::__verbose_terminate_handler() 
#5 0x300166c0 in _objc_terminate() 
#6 0x374ecf3c in __cxxabiv1::__terminate() 
#7 0x374ecfb4 in std::terminate() 
#8 0x374ed0dc in __cxa_throw() 
#9 0x300165e4 in objc_exception_throw() 
#10 0x30224026 in +[NSException raise:format:arguments:]() 
#11 0x30223fc6 in +[NSException raise:format:]() 
#12 0x305564b4 in -[NSKeyedUnarchiver initForReadingWithData:]() 
#13 0x3094927c in -[UINib instantiateWithOptions:owner:loadingResourcesFromBundle:]() 
#14 0x30949090 in -[NSBundle(NSBundleAdditions) loadNibNamed:owner:options:]() 
#15 0x308f131c in -[UIApplication _loadMainNibFile]() 
#16 0x308f0f9c in -[UIApplication _runWithURL:sourceBundleID:]() 
#17 0x309374b0 in -[UIApplication handleEvent:withNewEvent:]() 
#18 0x30936cf0 in -[UIApplication sendEvent:]() 
#19 0x3093687c in _UIApplicationHandleEvent() 
#20 0x3204696c in PurpleEventCallback() 
#21 0x30254a76 in CFRunLoopRunSpecific() 
#22 0x3025416a in CFRunLoopRunInMode() 
#23 0x308f0354 in -[UIApplication _run]() 
#24 0x308eea94 in UIApplicationMain() 
#25 0x0000f056 in main (argc=1, argv=0x2ffff7c8) at ...... Classes/main.m:16 
Current language: auto; currently objective-c 

任意のアイデアこれが何であるかとどのようにそれを修正するには?

私はXcode 4.2.1でビルドしています。

PS - ビルドのクリーニングや.xibファイルの再保存によって問題は解決しません。ときには、アプリケーションがこの段階を過ぎても、後で.xibが見えるのと同じ理由で、View Controllerの読み込み時にクラッシュすることがあります。

+0

あなたがビルドを清掃し、ペン先、ファイルを再保存しようとしていると言うように、私はあなたにも、シミュレータ内のコンテンツと設定をリセットしようとしていると仮定しますか? – Emil

+0

いいえ、私はデバイス上で実行しようとしています。アプリはシミュレータ(iOS 4.3とiOS 5.0シミュレータ)で正常に動作しています。 – SK9

+0

3.0シミュレータはありませんか?古いバージョンのXcodeをダウンロードしてそこにビルドして、それが役立つかどうかを確認することをお勧めします。 – Emil

答えて

2

この回答は、Ikuragamesが与えている可能性があると考えています(彼はコンピュータの近くにいません)。彼の代わりに、Xcode 4.2.1の問題を解決するには、.xibファイルをクリックし、右側のファイルプロパティパネルで、展開を "iOS 3.0"(私の場合)に設定し、 "Interface Builder 3.0 "(これも私の場合)。プロジェクト内のすべての.xibファイルに対してこれを行います。

Xcode 4.2.1では、現在のSDKと一致するように、ここではデプロイメントのデフォルトを「iOS 5.0」に設定し、ドキュメントタイプには「Xcode 4.1」を設定することができます。なぜXcodeがデプロイメントターゲットをプロジェクトデプロイメントターゲットとマッチさせるのかわかりません...

これがまだ動作しない場合、またはこの段階で非常に妄想的な場合は、 .xibファイルをロードするときにプログラムでビューを作成すると、NSKeyedUnarchiverが発生します。

enter image description here

+0

うまくいけばうれしいよ - あなたのプロジェクトで幸運:-) – ikuramedia

+0

@ikuragames:もしあなたが気にしないなら、私はここで自分の答えを受け入れることができます。 – SK9

+2

確かに問題ありません – ikuramedia

関連する問題