iOS 8 تشغيل التطبيق إلى الأبد أو تعطيل الشاشة




swift ipad (2)

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

يرجى إلقاء نظرة على الصور أدناه:

زيارة لتنفيذ الخلفية: Apple

تفضل بزيارة الرابط أدناه.

https://stackoverflow.com/a/29168981/4101371

http://www.raywenderlich.com/29948/backgrounding-for-ios (للتوضيح مع نموذج التعليمة البرمجية.)

آمل أن يساعد في حل مشكلتك.

أنا أقوم بإنشاء نظام أتمتة منزلي ، لقد اخترت جهاز iPad كجهاز رئيسي / جهاز رئيسي للتحكم في الكثير من أجهزة البلوتوث (بعض التطبيقات المصنوعة باستخدام RFDuino).

يتم تركيب جهاز iPad (iOS 8.4.1) على الحائط وتوصيله بالشاحن طوال الوقت.

أحتاج إلى اختيار النهج الصحيح لجعل التطبيق يعمل طوال الوقت للتحكم في الأجهزة وتلقي التحديثات وتحريك الأحداث وما إلى ذلك.

السؤال هو: هل هناك طريقة لتعطيل الشاشة visualy؟ إن تبطئها ليس جيدًا بما فيه الكفاية ؛ سيكون من الأفضل إذا تم إيقاف تشغيل الشاشة ، كما هو الحال في حالة الجهاز المؤمن.

بكلمات بسيطة ، هل يمكنني استخدام شاشة توقف سوداء؟

إذا كان الجواب أعلاه لا: هل هناك طريقة لفرض تشغيل التطبيق في الخلفية إلى الأبد؟

شيء واحد لتسليط الضوء هنا. لا يذهب هذا التطبيق إلى Apple Store لذا قد يكون الحل حلًا قذرًا

شكرا مقدما

تم اختباره حتى الآن:

let backgroundQueue = dispatch_get_global_queue(QOS_CLASS_BACKGROUND,0)

func applicationDidEnterBackground(application: UIApplication) {

    application.beginBackgroundTaskWithName("myBgTask", expirationHandler: nil)
    dispatch_async(self.backgroundQueue, myBackgroundTask)
}

func myBackgroundTask() {
    NSThread.sleepForTimeInterval(1)
    dispatch_async(self.backgroundQueue, myBackgroundTask)
}

يعمل هذا الأسلوب على استمرار تشغيل التطبيق في الخلفية لمدة 3 دقائق فقط.

استمر في البحث ...


هل يمكنك تجاوز / اختراق عن طريق تشغيل الصمت في الخلفية. لا أستطيع أن أتخيل أن هذا هو الحل الفعال أو الحل الأفضل ولكنه قد يكون عملاً. أعرف أن منشئي Workflow قد حاولوا تجاوز هذا أيضًا وحققوا أيضًا حد 10min. هناك حل بسيط لإرسال إشعار محلي في علامة 9 دقيقة وإخبار المستخدم بفتح التطبيق مرة أخرى حتى يستمر في تشغيله.







home-automation