Notificaciones

El AppFramework de AppStudio proporciona un plug-in de notificaciones que contiene herramientas para alertar e informar a los usuarios de su aplicación en el nivel del sistema operativo fuera de los confines de su aplicación.

Como ejemplo de esta capacidad, consulte la aplicación de muestra disponible en ArcGIS AppStudio o en el repositorio de GitHub de muestras de AppStudio.

Notificaciones locales

El componente LocalNotification proporciona la capacidad de implementar notificaciones para sus usuarios finales. No deben confundirse con notificaciones push, que provienen de un servicio en la nube externo; las notificaciones locales vienen de la aplicación y se desencadenan de manera interna. Para utilizar el componente LocalNotification, primero tiene que incluir la siguiente instrucción de importación:

import ArcGIS.AppFramework.Notifications.Local 1.0

Una notificación local precisa de los siguientes tres parámetros para programarse:

  • El título del mensaje
  • El contenido del mensaje
  • El retraso tras el cual se mostrará la notificación, medido en milisegundos.

Estos parámetros se gestionan con el método schedule, que establece que la notificación se desencadene tras un número determinado de milisegundos; además, proporciona un Id. para la notificación que el método clear puede utilizar para eliminarla.

Cuando se ha programado la notificación, no es necesario que la aplicación tenga el foco ni que se esté ejecutando para que se muestre la notificación. La siguiente muestra de código está basada en la plantilla Informe rápido y utiliza LocalNotification, así establece que aparezca una notificación una hora después de enviar el informe, para recordar al usuario que envíe un informe de seguimiento:

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();
        }
    }
}

Vibración

Además de las notificaciones locales, que proporcionan una manera evidente de notificación, también puede implementar retroalimentación no visible con el componente Vibración. Vibración se utiliza normalmente para resaltar acciones o notificar al usuario, sin embargo, el uso más común es junto con una notificación, para alertar al usuario y que consulte su dispositivo. Para utilizar el componente Vibración, incluya la siguiente instrucción de importación:

import ArcGIS.AppFramework.Notifications 1.0

Vibración es un componente de clase individual, por lo tanto, no puede instanciarlo. La siguiente muestra de código acompañará con una vibración todas las notificaciones locales programadas por la aplicación. Si el dispositivo no admite vibración, aparecerá en su lugar un mensaje en el registro de consola.

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

En este momento, no hay manera de ofrecer una duración del componente Vibración. En dispositivos Android, la vibración dura un segundo; en otros dispositivos, según esté predeterminado en el sistema.