ios titel Wie starte ich mein Set-Paket aus meiner Anwendung?




title tag wordpress (5)

Für iOs5 können Sie Einstellungen direkt öffnen:

[[UIApplication sharedApplication] openURL: [NSURL URLWithString: @ "prefs: //"]];

Ich arbeite daran, ein Set-Paket für meine Anwendung hinzuzufügen, um eine GUI für meine Einstellungen zu erhalten. Ist es möglich, dies über eine Schaltfläche in meiner Anwendung zu starten, oder müssen meine Benutzer immer manuell über die integrierte Einstellungsanwendung darauf zugreifen?


Je nachdem, wie Sie es tun, müssen Sie möglicherweise zu den Einstellungen gehen.

Siehe dieses Dokument, den Abschnitt "Anwendungseinstellungen". Hier ist der relevante Abschnitt aus der Einleitung:

Das Hinzufügen von Anwendungseinstellungen zur Anwendung "Einstellungen" eignet sich am besten für produktivitätsorientierte Anwendungen und Situationen, in denen Sie Präferenzwerte haben, die in der Regel einmal konfiguriert und dann selten geändert werden. Die E-Mail-Anwendung verwendet beispielsweise diese Einstellungen, um die Kontoinformationen und Einstellungen für die Nachrichtenprüfung des Benutzers zu speichern. Da die Anwendung "Einstellungen" die hierarchische Anzeige von Voreinstellungen unterstützt, ist die Bearbeitung Ihrer Voreinstellungen aus der Anwendung "Einstellungen" auch dann sinnvoll, wenn Sie über eine große Anzahl von Voreinstellungen verfügen. Das Bereitstellen derselben Einstellungen in Ihrer Anwendung erfordert möglicherweise zu viele Bildschirme und kann zu Verwirrung für den Benutzer führen.

Wenn Ihre Anwendung nur wenige Optionen enthält oder Optionen enthält, die der Benutzer möglicherweise regelmäßig ändern möchte, sollten Sie sorgfältig überlegen, ob die Anwendung "Einstellungen" für sie der richtige Ort ist. Zum Beispiel bieten Dienstprogramme benutzerdefinierte Konfigurationsoptionen auf der Rückseite ihrer Hauptansicht. Ein spezielles Steuerelement in der Ansicht dreht es um, um die Optionen anzuzeigen, und ein anderes Steuerelement blendet die Ansicht zurück. Bei einfachen Anwendungen bietet diese Art von Verhalten sofortigen Zugriff auf die Optionen der Anwendung und ist für den Benutzer viel bequemer als das Wechseln zu den Einstellungen.

Aktualisieren

Der Link ist abgelaufen. Dies ist ein ähnliches Dokument zu den Settings Bundles.


Ich habe gerade gesehen, dass die Aka-Aki-App mich direkt zum Push-Benachrichtigungsbildschirm der Einstellungen-App führt. Es tat dies beim ersten Mal, als ich es startete. Also muss es möglich sein. :)


Ich habe meine eigene Frage beantwortet: Sie können die NSUserDefaults tatsächlich verwenden, um Ihre eigenen Anwendungseinstellungen zu speichern, ohne in die Systemeinstellungen integriert werden zu müssen.

Zum Beispiel ist meine App eine Utility-App mit einer kleinen Benutzeroberfläche für einige Einstellungen auf dem FlipSide (die Ansicht, die der Benutzer beim Drücken der "i" -Taste erhält).

Beachten Sie, dass ich diese Informationen aus zwei Quellen gefunden habe.

  1. In einer großen Reihe von Berichten aus dem iPhone BootCamp erwähnt Scott Leberknight nebenbei, dass ihm beigebracht wurde, dass die Standardeinstellungen einer Anwendung in die Einstellungs-App integriert werden können oder nicht.

  2. Der Beispielcode von der offiziellen iphone Entwickler-Seite für BubbleLevel verwendet Voreinstellungen zum Speichern der Kalibrierung des Levels (die auf der Rückseitenansicht eingestellt ist)

Hier sind die Methoden in LevelAppDelegate.m, die beim Starten der Anwendung die Einstellung laden und beim Beenden speichern:

// Invoked after the application has been launched and initialized but before it has received its first event.
- (void)applicationDidFinishLaunching:(UIApplication *)application {
    // Set up the level view controller
    levelViewController = [[LevelViewController alloc] init];
    [window addSubview:levelViewController.view];

    // Restore calibration for device
    float restoredOffset = [[NSUserDefaults standardUserDefaults] floatForKey:BubbleLevelCalibrationOffsetKey];
    levelViewController.calibrationOffset = restoredOffset;
}


// Invoked immediately before the application terminates.
- (void)applicationWillTerminate:(UIApplication *)application {
    float calibrationOffset = levelViewController.calibrationOffset;
    NSNumber *offset = [NSNumber numberWithFloat:calibrationOffset];
    [[NSUserDefaults standardUserDefaults] setObject:offset forKey:BubbleLevelCalibrationOffsetKey];
}

Ich denke jedoch, dass die richtige Antwort auf die ursprüngliche Frage lautet:

  1. Nein - Sie können die Einstellungsoberfläche nicht über Ihre eigene App starten (ich habe noch keine Möglichkeit gesehen, dies zu tun - könnte falsch liegen, denke ich - aber ich bin mir ziemlich sicher, dass Sie, selbst wenn Sie Einstellungen von Ihrer App aus starten könnten Die Art und Weise, wie eine URL zum Starten von Safari verwendet werden kann - Sie können nicht über die App "Einstellungen" zu Ihrer App zurückkehren , wodurch der Zweck nicht erfüllt wird.

  2. Für die Persistenz auf Präferenzebene (im Gegensatz zu App-Daten in Dokumenten, Datenbanken oder Caches) haben Sie zwei Möglichkeiten. I) Verwenden Sie die Systemeinstellungen-App für Ihre Bearbeitung. Ii) Erstellen Sie Ihre eigenen Steuerelemente in Ihrer App

In beiden Fällen können Sie NSUserDefaults für die tatsächliche Persistenz verwenden.


Ich bin mir nicht bewusst, wie Sie Settings.app über Ihre App starten können. Warum sollten Sie die Einstellungen nicht direkt in Ihre App integrieren? Sie können InAppSettingsKit sehr einfach verwenden.





cocoa-touch