Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> iOS

iOS में 5 सेकंड के लिए यूजर इनएक्टिविटी कैसे डिटेक्ट करें


किसी भी iOS एप्लिकेशन को डिजाइन करते समय आप एक ऐसे परिदृश्य में आ सकते हैं जहां आपको कुछ कार्रवाई करनी है अगर स्क्रीन कुछ समय के लिए निष्क्रिय है।

यहां हम वही देखेंगे, हम 5 सेकंड के लिए यूजर इनएक्टिविटी डिटेक्ट करेंगे।

हम Apple के UITapGestureRecognizer का उपयोग करेंगे, आप इसके बारे में यहाँ और पढ़ सकते हैं: https://developer.apple.com/documentation/uikit/uitapgesturerecognizer

शुरुआत करते हैं!

हम एक बेसिक एप्लिकेशन डिजाइन करेंगे जहां हम ऐप लॉन्च होते ही टाइमर शुरू कर देंगे। यदि यूजर 5 सेकंड तक स्क्रीन को टच नहीं करता या कोई ऑपरेशन नहीं करता तो हम "User inactive for more than 5 seconds" मैसेज प्रदर्शित करेंगे। यदि यूजर स्क्रीन को छूता है तो हम टाइमर रीसेट कर देंगे।

चरण 1: प्रोजेक्ट बनाएं

Xcode खोलें → Single View Application → नाम दें "DetectingInactivity"

चरण 2: ViewController.swift में कोड जोड़ें

import UIKit

class ViewController: UIViewController {
    // Timer क्लास का ऑब्जेक्ट बनाएं
    var timer = Timer()
    
    override func viewDidLoad() {
        super.viewDidLoad()
        timer = Timer.scheduledTimer(timeInterval: 5, target: self, selector: #selector(ViewController.doStuff), userInfo: nil, repeats: true)
        let resetTimer = UITapGestureRecognizer(target: self, action: #selector(ViewController.resetTimer));
        self.view.isUserInteractionEnabled = true
        self.view.addGestureRecognizer(resetTimer)
    }
    
    @objc func doStuff() {
        // आप जो भी एक्शन करना चाहते हैं वह करें
        print("User inactive for more than 5 seconds.")
        timer.invalidate()
    }
    
    @objc func resetTimer() {
        timer.invalidate()
        timer = Timer.scheduledTimer(timeInterval: 5, target: self, selector: #selector(ViewController.doStuff), userInfo: nil, repeats: true)
    }
}

चरण 3: एप्लिकेशन चलाएं!

लॉन्च होने पर टाइमर कॉल हो जाता है और यदि आप स्क्रीन को नहीं छूते तो doStuff() फंक्शन कॉल हो जाता है। यहां आप कोई भी गतिविधि कर सकते हैं जो आप चाहते हैं जब यूजर निश्चित समय के लिए स्क्रीन को नहीं छूता।

यदि यूजर स्क्रीन को छूता है तो हम resetTimer() फंक्शन कॉल करते हैं जहां हम टाइमर को फिर से रीसेट करते हैं।

  1. विंडोज 10 में किसी अन्य यूजर की रजिस्ट्री कैसे संपादित करें विंडोज 10 में किसी अन्य यूजर की रजिस्ट्री कैसे संपादित करें

    क्या आपने कभी सोचा है कि विंडोज 10 में किसी अन्य यूजर की रजिस्ट्री सेटिंग्स को कैसे संशोधित किया जाए? आमतौर पर, विंडोज यूजर केवल वर्तमान में लॉग-इन खाते की रजिस्ट्री सेटिंग्स को ही संपादित कर सकते हैं, क्योंकि रजिस्ट्री एडिटर खोलने पर केवल वर्तमान यूजर के रजिस्ट्री हाइव्स ही प्रदर्शित होते हैं। यदि

  1. स्टैंडर्ड यूज़र के लिए टास्क मैनेजर कैसे डिसेबल करें स्टैंडर्ड यूज़र के लिए टास्क मैनेजर कैसे डिसेबल करें

    टास्क मैनेजर एक बिल्ट-इन विंडोज़ यूटिलिटी है जो आपके सिस्टम पर चल रहे प्रोसेस और एप्लिकेशन के बारे में जानकारी प्रदान करती है और मेमोरी और CPU उपयोग के बारे में आंकड़े देती है। इसका उपयोग प्रोसेस को समाप्त करने और उनकी प्राथमिकता बदलने के लिए भी किया जाता है। हालांकि, कई यूज़र्स बच्चों, परिवार और सह

  1. iOS 11 पर लगातार ऐप नोटिफिकेशन सक्षम करें: चरण-दर-चरण गाइड iOS 11 पर लगातार ऐप नोटिफिकेशन सक्षम करें: चरण-दर-चरण गाइड

    हम सभी नोटिफिकेशन के महत्व को जानते हैं, क्योंकि वे संदेशों और चैट का ट्रैक रखने में मदद करते हैं। हालांकि, यदि आप एक iPhone उपयोगकर्ता हैं तो आप नोटिफिकेशन की कष्टप्रद रूप से छोटी अवधि से परिचित होंगे जो लगभग बेकार है। इसमें कोई संदेह नहीं कि यह स्क्रीन पर नोटिफिकेशन को अव्यवस्थित होने से रोकता है,