كيفية معرفة ما إذا كان تطبيق iPhone تم إطلاقه عن طريق الخلفية أم لا

StackOverflow https://stackoverflow.com/questions/3243693

سؤال

يستخدم تطبيقي NSUserDefaults لتخزين بعض القيم بحيث يمكن استعادتها في تحديث التطبيق أو إذا تم إنهاء الخلفية.يحفظ الخلفيات تلقائيا قيمي الصحيحة، ولكن إذا كان المستخدم إنهاء التطبيق من المشغل، فقد تضيع الأرقام أيضا، وطريقة تحميل ViewDIDUND أعتقد أنها لا تثير عند إدخال الخلفية.هل هناك طريقة يمكنني حفظ NSUSERDEFAULTS في أي وقت تفريغ التطبيق.أيضا، كانت طريقة تحميل ViewDidID الخاصة بها نفس المشكلة، لا تثير من الخلف.ما هي طريقة حول هذا؟

p.s.حتى الآن البيانات الوحيدة التي يحتاج طلبي لحفظها هي int لعنة على الشاشة.

تحديث: UiacPplicationDIdderBackgroundingnotification يعمل بشكل رائع مع اقتراحاتك!

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

المحلول

لا يمكنك حفظ البيانات مباشرة قبل أن يقتل في النهاية، لكن يمكنك حفظ الحالة "فقط في حالة" في

نصائح أخرى

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

كما يقول joost، يجب عليك حفظ أي شيء تحتاج إلى استعادة الحالة داخل رد رد الفعل في ApplicationDidenterBackground؛في الأساس، يجب أن تفترض أن هذه هي الرسالة الأخيرة سوف تحصل على تطبيق الخاص بك قبل أن يقتل بلا رحمة من خلال عملية شريرة ريبر.

يجب عليك التحقق من

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