iOS 16 / macOS Ventura und die neuen Fokus-Filter: Technische Details
Im letzten Jahr spendierte Apple seinen Betriebssystemen das Fokus-Feature. Zur WWDC 2022 wurde dieses erweitert, sodass nun mitunter auch Fokus-Filter definiert werden können. Was das ist und wie das technisch funktioniert, behandeln wir in diesem Artikel.
Doch klären wir zuerst einmal, was Fokus am iPhone, am iPad und am Mac kann. Fokus erlaubt das Einrichten von mehreren Modi, wobei unter anderem „Nicht stören“, „Schlafen“ und „Zeit für mich“ standardmäßig mit dabei sind, doch man kann auch eigene anlegen. Für jeden Modus kann man eigene Filterregeln definieren, also zum Beispiel festlegen, welche Kontakte anrufen und Nachrichten senden dürfen. Auch ist es möglich, dass für jeden Fokus-Modus ein eigener Homescreen und seit iOS 16 auch ein eigener Sperrbildschirm angezeigt wird.
Und wie spielen da jetzt die neu angekündigten Fokus-Filter hinein? Ein Fokus-Filter kann das Verhalten einer unterstützten App auf Basis eines Fokus-Modus anpassen. Eine davon ist die vorinstallierte Kalender-App, welche etwa bei einem Arbeiten-Modus auch nur Kalender der Arbeit einblendet. Außerdem werden nur Termin-Benachrichtigungen für diese Kalender sichtbar zugestellt. Doch das Ganze ist nicht nur Apple vorbehalten, auch andere Entwickler können das Feature mithilfe einer eigenen API einbauen. Wie das geht, schauen wir uns nun an.
iOS 16 und Co.: Fokus-Filter unterstützen
Apple setzt das Intents-Framework bereits an einigen Orten ein, um Apps mit dem System kommunizieren zu lassen. So werden insbesondere Aktionen für Kurzbefehle oder die Konfiguration von Widgets auch über Intents betrieben. Die neuen Fokus-Filter nutzen dieses auch, allerdings die etwas neuere Version davon, das sogenannte AppIntents-Framework.
Für jeden Fokus-Filter, den man für seine App anbieten möchte, benötigt man ein Struct, welches SetFocusFilterIntent implementiert und beschreibt, was der Filter genau macht. Diese Beschreibungen sieht der Nutzer in den Einstellungen, welche am vorherigen Screenshot sichtbar sind.
Je nach Art des Filters möchte man seine Nutzer auch verschiedene Parameter konfigurieren lassen. In einer To-Do-App könnte der Entwickler etwa eine Auswahl für einen Ordner beziehungsweise ein Projekt anbieten, sodass beim aktivierten Fokus nur die Einträge daraus in der App gezeigt werden. Parameter lassen sich ganz einfach in das zuvor erstellte Struct als Attribute mit dem Parameter-Wrapper eintragen. Verwenden kann man dabei alle Standard-Datentypen und auch eigene Typen, welche allerdings dem AppEntity-Protokoll entsprechen müssen. Außerdem kann ein Parameter durch Anfügen eines Fragezeichens an den Datentyp auch optional sein. Nicht-optionale Parameter benötigen immer einen Standardwert.
Wenn der Filter vom Nutzer angelegt wurde, wird er auf der Startseite eines Fokus aufgelistet. Um dem Nutzer ungefähr ein Gefühl dafür zu geben, was für den Filter konfiguriert wurde, kann eine DisplayRepresentation angegeben werden.
Fokus-Filter verarbeiten
Nun steht der Fokus-Filter zur Auswahl in den Einstellungen, allerdings wird er von der App an dieser Stelle noch nicht verarbeitet.
Bei einer Änderung des Filters wird die Methode perform des zuvor angelegten Structs, welches SetFocusfilterIntent implementiert, aufgerufen. Darin kann man dann etwaige Anpassungen des Verhaltens mit den vorhandenen Parametern vornehmen. Die Methode perform wird auch bei Änderung der einzelnen Parameter ausgeführt, nachdem der Filter ein erstes Mal gespeichert wurde. Wenn eine App zusätzlich noch Widgets oder andere Systemerweiterungen hat, ist es außerdem notwendig, diese zu aktualisieren.
Für weitere Informationen zur Realisierung von Fokus-Filtern stellte Apple dieses Session-Video bereit.
-----
Willst du keine News mehr verpassen? Dann folge uns auf Twitter oder werde Fan auf Facebook. Du kannst natürlich in Ergänzung unsere iPhone und iPad-App mit Push-Benachrichtigungen hier kostenlos laden.
5 Kommentare zu dem Artikel "iOS 16 / macOS Ventura und die neuen Fokus-Filter: Technische Details"
-
Philipp 13. Juni 2022 um 10:22 Uhr ·Wird es auch endlich eine Möglichkeit geben das Handy bei Anruf lautlos zu schalten? Derzeit kann man ja nur einstellen, ob ein Call durchgereicht oder nicht zugestellt wird. Aber wenn er erlaubt ist, dann läutet das iPhone normal. Wenn man das nicht will, muss man manuell den Kippschalter an der linken Seite kippen. Verstehe nicht warum man eine solche Funktion nicht anhand eines Fokus Filters ausführen kann.iLike 1
-
GeneralMotors 13. Juni 2022 um 14:39 Uhr ·Klingelton aus machen?iLike 0
-
Philipp 13. Juni 2022 um 22:02 Uhr ·Wie geht das? Ich hätte keine Routine gefunden. In den Focus Einstellungen geht nur, dass der Anruf gar nicht ankommt. Und auch mit Shortcuts geht es nicht. Es gibt keinen Eintrag für Klingeltöne. Es geht nur für die Apple Watch, da würde es den Theatermodus geben. Der wirkt sich aber leider nicht aufs iPhone aus.iLike 0
-
-
Stanger 17. Juni 2022 um 22:12 Uhr ·Duu in es gibts schon längstiLike 0
-