سؤال

في طلبي ، أريد استدعاء وظيفة تسجيل الدخول إذا كان المستخدم في وضع الخمول لفترة معينة من الوقت كيفية الإنجاز

هذه الإجابة لا تعمل بالنسبة ليiPhone: اكتشاف عدم نشاط المستخدم/الخمول منذ آخر لمس الشاشةإذا قمت بدراسة فئة مندوب التطبيق الخاص بي من UIApplication وتنفيذها

- (void)sendEvent:(UIEvent *)event

يعطيني خطأ

*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'There can only be one UIApplication instance.'

لا يمكنني العثور على المثيل الآخر لـ UIApplication في طلبي

لقد فعلت حتى الآن

بدلاً من

@interface IdleAppDelegate : NSObject <UIApplicationDelegate> {

لقد غيرته إلى

@interface IdleAppDelegate : UIApplication<UIApplicationDelegate> {

وفي الدليل بدلاً من

 int retVal = UIApplicationMain(argc, argv, nil, nil);

لقد قمت بتغييره إلى

int retVal = UIApplicationMain(argc, argv, @"IdleAppDelegate", @"IdleAppDelegate");

هل هناك أي شيء يتبقى؟

أحصل على الخطأ أعلاه ... هل أفتقد شيئًا ...؟

الرجاء المساعدة

شكرًا

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

المحلول

فئة التطبيق الخاصة بك هي أيضًا فئة مندوب التطبيق - هذا سيء. UIApplicationMain() سيقوم بإنشاء مثيل من الفئة الفرعية للتطبيق المخصص ، والذي سيحاول بعد ذلك مثيل مندوبها - وهو أيضًا مثيل للفئة الفرعية للتطبيق المخصص. يجب عليك فصل هذه المخاوف - نعم يحتاج الفئة الفرعية المخصصة للتطبيق إلى الفئة الفرعية UIApplication, ، ولكن يجب أن يكون مندوب التطبيق الخاص بك فئة منفصلة NSObject.

نصائح أخرى

جرب هذا

-(void)applicationWillResignActive:(UIApplication *)application

{
    NSLog(@"Application not Active");
    // FETCH THE CURRENT TIME 
}
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top