إعلامات

يوفر AppStudio AppFramework مكون إضافي للإشعارات يحتوي على أدوات لتنبيه مستخدمي التطبيق وإبلاغهم عند مستوى نظام التشغيل خارج حدود التطبيق.

وكمثال على هذه الوظيفة، راجع نموذج التطبيق المتاح في ArcGIS AppStudio أو في مستودع GitHub لنماذج AppStudio.

الإشعارات المحلية

يوفر مكون LocalNotification إمكانية تنفيذ الإشعارات للمستخدمين النهائيين. ولتجنُّب حيرة الإشعارات المباشرة الواردة من خدمة سحابة خارجية، فإن الإشعارات المحلية تأتي من التطبيق، ويتم تشغيلها داخليًا. لاستخدام مكون LocalNotification، يجب عليك أولاً تضمين بيان الاستيراد التالي:

import ArcGIS.AppFramework.Notifications.Local 1.0

يتطلب الإشعار المحلي جدولة المعلمات الثلاث التالية:

  • عنوان الرسالة
  • محتوى الرسالة
  • التأخير الزمني الذي يُعرَض بعده الشعار، ويُقاس بالملي ثانية.

تتم معالجة هذه المعلمات بواسطة طريقة schedule التي تقوم بتعيين الإشعار للتشغيل بعد الرقم المحدد من وحدات الملي ثانية، وتوفر معرفًا للإشعار الذي يمكن استخدامه بواسطة طريقة clear لإزالته.

بمجرد جدولة الإشعار، لا يجب أن يكون التطبيق محل تركيز أو حتى يعمل للإشعار المطلوب عرضه. ويعتمد نموذج الكود التالي على قالب "التقرير السريع"، ويستخدم LocalNotification، ويقوم بتعيين إشعار للظهور لساعة واحدة بعد إرسال التقرير؛ لتذكير المستخدم بإرسال تقرير متابعة:

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

اهتزاز

وبالإضافة إلى الإشعارات المحلية التي توفر نموذجًا واضحًا من الإشعار، يمكنك أيضًا تنفيذ ملاحظة غير مرئية باستخدام مكون "اهتزاز". عادةً ما يتم استخدام الاهتزاز لتمييز الإجراءات أو إشعار المستخدم، ولكن يتمثل غالبية الاستخدام العام في التعاون مع إشعار لتنبيه المستخدم للنظر في جهازه. لاستخدام مكون "اهتزاز"، قم بتضمين بيان الاستيراد التالي:

import ArcGIS.AppFramework.Notifications 1.0

الاهتزاز هو مكون مفرد، وهو ما يعني أنه يتعذر عليك إنشاء مثيل له. سيرافق نموذج الكود التالي كل الإشعارات المحلية المجدولة بواسطة التطبيق مصحوبةً باهتزاز. إذا كان الجهاز لا يدعم الاهتزاز، تظهر رسالة بدلاً من ذلك في سجل وحدة التحكم.

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

وحاليًا، لا توجد أي طريقة لتوفير مدة لمكون الاهتزاز. في أجهزة Android، يستمر الاهتزاز لثانية واحدة، فيما يستخدم الوضع الافتراضي في الأجهزة الأخرى.