3

UIApplicationExitsOnSuspend をブール値に設定し、チェックボックスをオンにしたので、

- (void) applicationDidEnterBackground:(UIApplication *)application

は呼び出されませんが、シミュレーターのホームボタンをクリックすると、常にそのメソッドに入ります。私は何か間違ったことをしていますか、それともアプリが「古いスタイル」で動作し、マルチタスクをサポートしていないことを確認できますか?

どうもありがとう、

ステファン

このレベルで定義される設定
アーキテクチャ: 標準
ベース SDK: iPhone Simulator 4.0
コード署名 ID: iPhone 開発者: myName
任意の iPhone OS デバイス: iPhone 開発者: myName
iPhone OS 展開ターゲット: iPhone OS 3.1
その他のリンカー フラグ: -lxml2
事前バインディング: 選択されていない
ヘッダー検索パス: /usr/include/libxml2
C 言語方言: C99 [-std=99]
不一致 戻り値の型: 選択
済み 未使用の変数: 選択済み

4

6 に答える 6

6

これをテストするために私が見つけた違いの 1 つは、Xcode デバッガーに接続された iPhone 4 シミュレーターまたはデバイスを使用することです。適切に有効にしていれば、ホームボタンを押すとデバッガが終了します。「マルチタスク」が有効になっている場合、ホーム ボタンを押してもデバッガは終了しません。アイコンをタッチして元に戻すと、デバッグ セッションが続行されます。

于 2010-07-06T16:32:49.350 に答える
3

http://www.drobnik.com/touch/2010/07/understanding-ios-4-backgrounding-and-delegate-messaging/

iOS4で何が起こるかFLowChartでその問題を読む必要があります

于 2010-09-06T14:08:13.247 に答える
2

UIApplicationExitsOnSuspend に YES を設定すると、最初からうまくいきましたが、ダブルクリックするとアプリが表示されたので気づきませんでした。

「ホームボタンをダブルクリックすると、最近使用したアプリのリストであるため、アプリが常に表示されます。 (参照: http://www.apple.com/iphone/features/multitasking.html )」

applicationWillTerminate デリゲート メソッドが呼び出された場合は、それで完了です.. (チェックするブレーク ポイントまたは NSLog を追加します)

ただのヒント。これが私のような人に役立つことを願っています..;)

于 2010-12-26T15:09:52.810 に答える
0

に設定しましたが、テスト中にapplicationDidEnterBackgroundが呼び出されます (およびその後ApplicationWillTerminate) 。iOS 4.1 がインストールされた iPhone 3G と iPhone 4 シミュレーターでアプリをテストしました。UIApplicationExitsOnSuspendYES

誰かが iPhone 4 でこれをテストしましたか?

于 2010-11-08T22:25:38.987 に答える
0

キー UIApplicationExitsOnSuspend は、デバイス iPhone 4 でのみ正常に動作します。iOS4 をインストールしてマルチタスクを実行している場合でも、iPhone 3GS では動作しません。それが私たちのテストが示すものです。

于 2010-08-12T17:44:42.393 に答える
0

私も同じ問題を抱えていました。私にとってうまくいったのは、info.plistファイルをxmlに変換することです。古いプロジェクトには xml 形式の info.plist がありませんでしたが、info.plist ファイルを表示するためだけに新しい空のプロジェクトを作成し、それが xml であることを確認しました。そこで、新しい info.plist xml 形式を使用して、info.plist ファイルを書き直しました。それを行った後、UIApplicationExitsOnSuspend キーが機能するようになり、アプリが終了します

于 2011-01-24T04:03:47.437 に答える