Benachrichtigungen

AppStudio AppFramework bietet ein Benachrichtigung-Plug-in, das Werkzeuge zum Warnen und Informieren der Benutzer Ihrer App auf Betriebssystemebene außerhalb der App beinhaltet.

Ein Beispiel für diese Funktionalität finden Sie in der Beispiel-App, die in ArcGIS AppStudio verfügbar ist, oder im Repository für AppStudio-Beispiele in GitHub.

Lokale Benachrichtigungen

Die LocalNotification-Komponente ermöglicht die Implementierung von Benachrichtigungen an Ihre Endbenutzer. Lokale Benachrichtigungen, die von der App stammen und intern ausgelöst werden, dürfen nicht mit Push-Benachrichtigungen verwechselt werden, die von einem externen Cloud-Service ausgegeben werden. Um die LocalNotification-Komponente verwenden zu können, müssen Sie zunächst die folgende Import-Anweisung einbeziehen:

import ArcGIS.AppFramework.Notifications.Local 1.0

Für eine lokale Benachrichtigung müssen die folgenden drei Parameter geplant werden:

  • der Titel der Meldung
  • der Inhalt der Meldung
  • die Zeitverzögerung, nach der die Benachrichtigung angezeigt wird, gemessen in Millisekunden

Diese Parameter werden von der schedule-Methode verarbeitet, die die Auslösung der Benachrichtigung nach Ablauf der angegebenen Anzahl von Millisekunden festlegt und eine ID für die Benachrichtigung bereitstellt, die anschließend von der clear-Methode zu deren Entfernung verwendet werden kann.

Sobald eine Benachrichtigung geplant wurde, muss der Fokus weder auf der App liegen noch muss sie ausgeführt werden, damit die Benachrichtigung angezeigt wird. Das folgende Codebeispiel basiert auf der Vorlage "Quick Report" und verwendet LocalNotification, wodurch eine Benachrichtigung so eingestellt wird, dass sie eine Stunde nach dem Senden eines Berichts angezeigt wird, um den Benutzer daran zu erinnern, dass er einen Folgebericht sendet:

LocalNotification {
    id: notification
    onTriggered: {
        console.log("Triggered ID: ", id)
    }
}
Component {
    id: addDetailsPage
    AddDetailsPage {
        onNext: {
            if(message=="submit"){
                submitReport()
                notification.schedule("Submit Follow-Up Report", "An hour has passed since your initial report. Please send a follow-up report.", 3600000)
            } else{
                stackView.showResultsPage()
                saveReport()
            }
        }
        onPrevious: {
            stackView.pop();
        }
    }
}

Vibration

Neben lokalen Benachrichtigungen, die eine sichtbare Benachrichtigungsform bieten, können Sie auch nicht sichtbares Feedback mithilfe der Vibrationskomponente implementieren. Vibration wird häufig verwendet, um Aktionen hervorzuheben oder den Benutzer zu benachrichtigen. Am häufigsten wird sie jedoch zusammen mit einer Benachrichtigung verwendet, um den Benutzer darauf hinzuweisen, einen Blick auf sein Gerät zu werfen. Um die Vibrationskomponente verwenden zu können, müssen Sie zunächst die folgende Import-Anweisung einbeziehen:

import ArcGIS.AppFramework.Notifications 1.0

Vibration ist eine Einzeltonkomponente, d. h. Sie können sie nicht instanziieren. Das folgende Codebeispiel wird alle von der App geplanten lokalen Benachrichtigungen mit einer Vibration begleiten. Wenn das Gerät keine Vibration unterstützt, wird stattdessen eine Meldung im Konsolenprotokoll angezeigt.

LocalNotification {
    id: notification
    onTriggered: {
        console.log("Triggered ID: ", id)
        if(Vibration.supported) {
            Vibration.vibrate()
        }
        else{
            console.log("Vibration not supported on this device.")
        }
    }
}

Derzeit kann keine Dauer für die Vibrationskomponente angegeben werden. Auf Android-Geräten dauert die Vibration eine Sekunde, auf anderen Geräten wird der Standardwert des Systems verwendet.