突然、TestflightとiTunes-syncを介したアドホックディストリビューションが機能しなくなりました。アドホックビルド構成を使用して配布されたアプリケーションは、デバイスで完全に起動することはありません。セグメンテーション違反11ですぐにクラッシュします。
この問題の奇妙な点は、以下で説明するすべてのデバイスでのデバッグビルドが問題なく機能することです。これにより、私のproject.pbxprojに何かが台無しになっていると私は信じています。しかし、git-logを見ると、故障しているものは何もありません。変更されているのは、アーキテクチャ(ARCHS)と有効なアーキテクチャ(VALID_ARCHS
)だけです。
アーキテクチャを台無しにすると、起動時ではなくビルドプロセス中に実際のエラーが発生するはずだと思いますか?
背景:
また、Xcode4.4.1と4.5GMの両方をインストールしました。GMをAppStoreからアップグレードすると、Xcode4.4.1のバックアップも削除されました。その一時的な中断の後、Xcodeのすべてのバージョンを削除し、再起動してバージョン4.4.1を再度インストールしました(これは、armv6用にビルドできるようにするためです)。
このデバッグを進めるための役立つヒントは、私にとって非常に貴重です。
御時間ありがとうございます。<3
デバイスからのコンソールの印刷とクラッシュログ:
-https : //gist.github.com/3781018
必要に応じてログを追加できます。
現在の環境:
-Xcodeバージョン4.4.1(4F1003)-MacOS
バージョン10.8.2
プロジェクトのセットアップ(pbxproj):-https :
//gist.github.com/3780985
テストしたデバイス:
-iPhone 3GS iOS 6
-iPhone 3G iOS 4.2.1
-iPad 2nd Gen iOS 5.1.1
-iPhone 4S iOS 5.1.1
-iPhone 4 iOS 6.0
-iPhone 4S iOS 6.0
更新
デバッグを続行するには、これを試し
ました。1. Testflightをスキップし、iTunesでアドホックをリリースする従来の方法を使用します。FAIL2
.プロビジョニングプロファイルの再インストールFAIL2
.マシンに新しいユーザーを作成し、Xcodeを再インストールします。FAIL3
.別のマシンからビルドします。FAIL4
.最適化レベルを次のように設定します。- O0FAIL
コードが変更されていないことは確かでしたが、これについて他に合理的な説明はありませんでした。そこで、アドホックリリースを成功させた日を見つめながら、プロジェクトをgitで元に戻し始めました。恐ろしいことに、同じセグメンテーション違反が時間の構造を通して私を追いかけていることに気づきました!
この事実を考慮すると、取るべき行動は1つだけでした。非常に強力なデバッグ方法として、スプレーアンドプレイと吹き替えました。=)言い換えれば、私はコードのセクションをコメントアウトし始め、それが何か違いを生むかどうかを確認しました。そして、まったく驚いたことに、実際に違いがありました。アプリケーションの一部を無効にしてから数時間有効にした後、原因が見つかりました。静的なNSArrayが保持されることはありませんでした。ここで本当に驚かされるのは、アレイの実際の初期化が2010年以降同じように見えていることです。では、なぜこれが突然メモリエラーを引き起こしたのでしょうか。そして、なぜ静的アナライザーはこれについて私たちに警告しなかったのですか?
私は今、これらの質問に答えるにはあまりにも疲れ果てています。私は質問をより詳細に更新し、明日も答えが出ることを願っています。
繰り返しになりますが、これまでにご協力いただいた皆様、本当にありがとうございました!<3