2010-08-02 6 views
6

Also ich weiß, dass dies zu Tode geprügelt wurde, aber ich kann immer noch keine Lösung finden.UIApplicationExitsOnSuspendieren, was mir sonst noch fehlt?

Ich habe meine UIApplicationExitsOnSuspend auf <true/> in der Info.plist und immer noch sowohl im Simulator als auch auf einem iPhone 4-Gerät, geht die App in den Standby-Modus anstatt zu beenden?

Irgendwelche Ideen, was könnte man noch tun, um es zu beenden? Vielleicht gibt es Methoden, die ich aus dem App-Delegaten entfernen muss? Irgendwelche Ideen?

+0

Ich habe dasselbe Problem, hast du eine Lösung gefunden? –

Antwort

6

Haben Sie einen sauberen Build erstellt, löschen Sie die App vom Simulator und vom Gerät und installieren Sie sie neu? Das ist der einzige Schlüssel, der es beeinflusst. Stellen Sie außerdem sicher, dass Sie ein Basis-SDK erstellen, das auf iOS 4.0 festgelegt ist.

UIApplicationExitsOnSuspend (Boolean - iOS) gibt an, dass die Anwendung nicht beendet werden sollte in den Hintergrund verschoben, wenn es verlassen wird. Anwendungen, die mit dem iPhone SDK 4.0 oder höher verknüpft sind, können diesen Schlüssel enthalten und seinen Wert auf YES setzen, um zu verhindern, dass die Hintergrundausführung und die Aussetzung von Anwendungen automatisch aktiviert werden. Wenn der Wert dieses Schlüssels JA ist, wird die Anwendung beendet und aus dem Speicher gelöscht, anstatt in den Hintergrund verschoben zu werden. Wenn dieser Schlüssel nicht vorhanden ist oder auf NEIN gesetzt ist, wird die Anwendung wie gewöhnlich in den Hintergrund verschoben.

+0

Ich habe das Build-Verzeichnis gelöscht und auch die Einstellungen im Simulator zurückgesetzt. Dann habe ich die neu kompilierte Binärdatei auf ein iPhone 4 installiert. Leider kein Glück in beiden Sim, Gerät. Machen diese Schritte einen sauberen Build? – schone

+0

Normalerweise genügt es, wenn Sie in XCode ein "Clean All Targets" aus dem Menü wählen, da es genau das tut, was Sie gerade getan haben. – iwasrobbed

+0

Versucht, immer noch in den Hintergrund/Suspend-Modus ... Ich verstehe es nicht. Mein SDK verwendet ist 4.0 und es ist gut mit rückwärts den ganzen Weg bis 3.1 Gibt es etwas in den Build-Flags? – schone

2

hatte ich das gleiche Problem, wenn Sie den Schlüssel UIApplicationExitsOnSuspend hinzufügen, stellen Sie sicher, dass Sie direkt darauf klicken, und wählen Sie Werttyp> Boolean. Andernfalls wird Xcode es ignorieren. Hoffe, es hilft

3

Einstellung JA zu UIApplicationExitsOnSuspend, funktionierte gut für mich von der ersten Zeit, aber ich wusste nicht, wie meine App beim Doppelklicken angezeigt wurde.

„Doppelklick auf die Home-Taste wird immer Ihre App zeigen, da es eine Liste der zuletzt verwendeten Apps ist (Ref: http://www.apple.com/iphone/features/multitasking.html).“

Wenn applicationWillTerminate Delegat-Methode aufgerufen wird, dann sind Sie fertig mit diesem .. (Fügen Sie einen Unterbrechungspunkt oder NSLog hinzu, um zu überprüfen)

Nur ein Tipp. Hoffe das hilft jemand wie ich ..;)

5

Ich hatte das gleiche Problem, dass Cyril identifiziert: Ich habe "YES" in als der Wert eingefügt, aber das machte den Schlüssel standardmäßig auf String statt "Boolean". Klicken Sie also mit der rechten Maustaste auf den Schlüssel und stellen Sie sicher, dass der Typ Boolean ist.

-1

Dies scheint sich in xCode4/iOS4.3 geändert zu haben (zum Besseren). Der boolean ist jetzt „Anwendung nicht im Hintergrund läuft“, und - na ja - es funktioniert für mich ..

David

+1

Das ist nur der "freundliche" Name. –

+0

Bitte: Warum eine Abstimmung über eine alte Frage? –

0

Es ist wichtig beachten Sie, dass Ihre AppDelegate der „applicationDidEnterBackground“ und „ApplicationWillTerminate“ Methoden sind beide genannt (in dieser Reihenfolge), auch wenn Ihr UIApplicationExitsOnSuspend als (boolean) "YES" markiert ist.