2017-08-27 5 views
-1

Ich habe eine App, wenn eine bestimmte Aktion ausgelöst wird Ich schließe die App und bitte den Benutzer, sie erneut zu öffnen.Programmgesteuertes Kopieren einer iOS-App

Das Problem ist, wenn die App ausgeführt wird exit(0) die App bleibt im Apps-Stack (wenn ich zweimal auf die Home-Taste klicke). Ich möchte, dass es vollständig gelöscht wird, so dass viewDidLoad() erneut ausgeführt wird, wenn die App geöffnet wird.

+2

Warum? Das sollte absolut nicht nötig sein. – luk2302

+0

Ich brauche es in meinem Code. – user3573587

+0

Nein, Sie müssen die App so programmieren, dass kein manueller Neustart erforderlich ist. – luk2302

Antwort

0

Sie können eine App nicht selbst beenden.

Von Apple menschlichen Benutzer-Richtlinien ...

nicht Programmatically

nie verlassen programmatisch einer iOS-Anwendung Beendigen Sie, weil die Menschen als Crash zu interpretieren dies neigen. Wenn externe Umstände jedoch verhindern, dass Ihre Anwendung wie vorgesehen funktioniert, müssen Sie Ihren Benutzern von die Situation mitteilen und erklären, was sie dagegen unternehmen können. Je nachdem, wie stark die Anwendungsstörung ist, haben Sie zwei Möglichkeiten: .

Zeigen Sie einen ansprechenden Bildschirm an, der das Problem beschreibt, und schlägt eine Korrektur vor. Ein Bildschirm gibt ein Feedback, das den Benutzern versichert, dass nichts mit Ihrer Anwendung zu tun hat. Es stellt den Nutzer in der Steuerung, lassen sie entscheiden, ob sie Korrekturmaßnahmen und weiterhin mit Ihrer Anwendung oder drücken Sie die Home-Taste und öffnen Sie eine andere Anwendung

Wenn nur einige Ihrer Anwendung Funktionen nicht funktionieren, Anzeige nehmen wollen entweder ein Bildschirm oder eine Warnung, wenn Benutzer die Funktion aktivieren. Zeigen Sie die Warnung nur an, wenn Personen versuchen, auf die Funktion zuzugreifen, die nicht funktioniert.

Werfen Sie einen Blick auf diese Antwort: https://stackoverflow.com/a/8491688/742298

+0

Okay, was sind dann die Alternativen, um die App neu zu laden, wenn der Benutzer sie wieder öffnet? Ich möchte, dass ViewDidLoad erneut ausgeführt wird. – user3573587

+1

Setzen Sie Ihren Code in eine separate Methode, die erneut ausgeführt werden muss. Rufen Sie diese Funktion von viewDidLoad auf und rufen Sie auch den Code auf, in dem Sie Ihre Anwendung beenden möchten. –

Verwandte Themen