2011-07-29 9 views
-1

私はこの問題をほぼ1週間処理してきました。私はrestkitというフレームワークを使用しています。私はRestKitのコードを辿ってデバッグしようとしています。さらに実行を停止する場所は、NSManagedObjectContextに保存しようとしているときです。私はhereをダウンロードできるサンプルテストプロジェクトを添付しています。基本的にはあなたが次のことを行う必要があり、エラー再現する:テーブルビューロード 保存時のコアデータの問題

  • ストップのデータがアプリ
  • 2回目のアプリを実行するまで

    1. 初めて実行するためのアプリケーションを、

    これは、RKManagedObjectStore.mにある管理対象オブジェクトのコンテキストに保存しようとすると、基本的に停止します。save(私はそこにブレークポイントを設定しました)。私は、モデルから始まって、すべてが動作することを確認しようとしました...しかし、実際に何が起こっているのか分かりません。誰かが助けてくれますか?上記のハイパーリンクを設定したテストプロジェクトは非常に簡単です...

  • +0

    'Test.xcdatamodeld'は' element'や 'layout'ファイルがないので壊れています。 – TechZen

    +1

    あなたは本当に人々が数MBのファイルをダウンロードし、プロジェクトを構築し、問題を見つけるために何千行ものコードを辿ることを期待していますか?あなたができることは、ハングが発生した場所にコードを投稿することです。 – TechZen

    +0

    私のコード例をgithubに投稿しました – aherlambang

    答えて

    0

    あなたがリンクしているプロジェクトは、そのままでは構築されません。

    NSErrorインスタンスの印刷に失敗しましたか?コアデータは、発生したエラーを説明するのに非常に優れています。あなたはおそらくそのエラーの中で、多くのサブエラーがあるので、あまりにも良いです。

    +0

    あなたのライブラリでは320必要ですので、1つをダウンロードする必要があります..私は保存を終了する前にエラーを印刷することはできません..それだけでロードして – aherlambang

    +0

    つまり、NSManagedObjectContextコードの次の行を実行しません...そこにぶら下がって無限のループのようなものです – aherlambang

    1

    これは非常に奇妙な問題です。 RestKitに含まれているDBDiscussionBoardExampleを見て、やり直してみましょう。 RestKitとThree20のインターフェースのどこかに無限ループがあるようです。

    また、ヘッダーがjsonを要求しても、パスに ".json"が含まれていない限り、サーバーがjsonで応答しないことが奇妙なこともわかります。

    RestKitをThree20なしで使用すると、頭痛の種を大幅に節約できます。あなたのアプリが何らかの理由でThree20を必要としない限り、私はそれがちょうどコードを畳み込むことがわかります。 RestKitには、そのままCoreDataにアクセスするためのきれいなインターフェースがあります。

    あなたが好きなことが言えば、これはRestKitのgithubリポジトリにバグとしてファイルすることができます。

    そして、ロードするために手動でThree20をプロジェクトに追加する必要がありました。あなたのプロジェクトを見た後、なぜあなたは問題を引き起こしていた単一の場所を指し示すことができないのか理解していますが、助けたい人にはもっと簡単にしようとするべきです - あなたのプロジェクトに依存関係を含めるか、サブモジュールでレポ。

    +0

    エヴァン、返信いただきありがとうございます..私は昨日DBDiscussionBoardExampleを見つめて、問題を見つけることができないようです同じように。私はブレイクにこの問題を見てもらうよう依頼しましたが、彼はそれも変だと感じています。私は実際にthree20の前に私のプロジェクトに戻したいと思っていましたが、私は3 20に私のプロジェクトを移植するのに多大な時間を費やしました。これをレッスンとし、再びthree20を使用することはありません。 – aherlambang

    +0

    あなたは将来ニンバスをチェックアウトするかもしれません:https://github.com/jverkoey/nimbus。これは、スパゲッティの依存関係や文書化やテストの欠如を排除するThree20の機能を置き換える機能を意味します。ジョー・ヒューイットからスリー20を引き継いだ人も書いています。それはまだ実際に生産の準備ができていませんが、それはあなたの目を保つために何かです。 –

    +0

    私は実際にNimbusをしばらく見守ってきました。残念ながらRestKitはまだニンバスを使用していません – aherlambang

    関連する問題