سؤال

أقوم بتطوير تطبيق iPhone يقدم التنبيهات في أوقات معينة باستخدام UILocalNotifications. يؤدي الضغط على زر موافق على التنبيه إلى تشغيل التطبيق حتى يتمكن من تنفيذ مهام محددة.

حتى الآن ، يعمل كل شيء بشكل جميل في معظم الحالات: إذا كان التطبيق قيد التشغيل واصفيات التنبيه ، فهو يعمل بشكل جيد ، وإذا لم يكن التطبيق قيد التشغيل (ولكن الهاتف قيد التشغيل) ، فهو يعمل أيضًا.

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

  1. تنبيه الحرائق ، وأنا "تنزلق لإلغاء القفل" على الفور ، ثم يتم إطلاق التطبيق كما هو متوقع.
  2. تنبيه الحرائق ، لكنني أنتظر "الانزلاق لإلغاء قفل" أكثر من 20 ثانية (الوقت الذي يستغرقه الشاشة لقفل (DIM) مرة أخرى). عندما أقوم بإلغاء قفل الشاشة أخيرًا ، يظهر التنبيه ، لكنه لا يطلق التطبيق.

لقد نظرت في جميع مستندات Apple وهذا الموقع ، لكن لا يمكنني العثور على إجابة. آمل أن يكون تفسيري منطقيًا. أي أفكار؟

هل كانت مفيدة؟

المحلول

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

نصائح أخرى

شكرا لإجابتك السريعة والواضحة ، دومينيك. المتابعة السريعة: الغرض من إعادة إطلاق التطبيق هو جدولة تنبيه آخر. إذا أرسلت العديد من التنبيهات في وقت واحد (مجدولة لأوقات مختلفة) ، ولم يفتح المستخدم الهاتف لأي منها ، هل يظهرون جميعًا في نفس الوقت في المرة الأولى التي يفتح فيها المستخدم؟ (أريد فقط أن يظهر آخر واحد)

شكرًا لك مرة أخرى.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top