2

これがばかげた質問である場合は申し訳ありませんが、アプリでダングリングポインターの問題をデバッグしているので、知っておく必要があります-アプリがresignActive最初になしでできるenterBackgroundかどうか。becomeActive最初なしにenterForeground

私の状況-アプリケーションのすべての要求/接続を管理するクラス(「接続」と呼ばれる)があります。本当に、アプリが生きている限り、それは利用可能である必要があります。

-didFinishLaunchingWithOptionsの場合、Connectionのインスタンスを初期化し、いくつかのパラメーターを設定します。私の中で、-applicationWillEnterBackground私はConnectionのアクションを一時停止します。

そして、私の中で-applicationWillEnterForeground、Connectionインスタンスがまだ存在するかどうかを確認します。含まれている場合は、アクションを再開するだけです。そうでない場合は、新しいアクションが作成されます。

アプリをしばらく実行したままにすると(ホーム画面に戻るかどうかに関係なく、1時間ほど)、このエラーでアプリがクラッシュします。

"2012-08-19 13:08:42.708 Picsilk[11108:707] *** -[Connection respondsToSelector:]: message sent to deallocated instance 0x24e120"

クラス'Connection'は、単純なNSObjectサブクラスであり、ASINetworkQueueインスタンスを管理し、ユーザーのトークンを保存してAPIへのリクエストを認証するための特定のニーズを処理します。

このクラスのインスタンスは、アプリデリゲートによって作成および管理されます。私のさまざまなViewControllerは、アプリデリゲートを使用して接続にアクセスします。接続は、キュー(およびキューに入れられていない要求も)を自動的に処理します。

確かに、このSDKを理解するための非常に単純で基本的なものが欠けています。助けてください。:]

4

1 に答える 1

4

アプリはUIApplicationWillResignActiveNotification、電話がかかってきたとき、または他の通知が表示されたときにを受け取ることができます。したがって、はい、「アプリが最初にEnterBackgroundなしでresignActiveする」ことは可能です。

于 2012-08-20T19:23:50.570 に答える