كيفية اكتشاف مستخدم الخمول في iPhone-SDK
-
29-09-2019 - |
سؤال
في طلبي ، أريد استدعاء وظيفة تسجيل الدخول إذا كان المستخدم في وضع الخمول لفترة معينة من الوقت كيفية الإنجاز
هذه الإجابة لا تعمل بالنسبة لي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
}