Android में Kotlin से Timestamp प्राप्त करें: पूरी गाइड

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

Android में Kotlin से Current Timestamp: शुरुआत से प्रोफेशनल तक

\n\n

क्या आपने कभी सोचा है कि जब आप मैसेज भेजते हैं, फोटो लेते हैं या टाइमर चलाते हैं, तो आपका स्मार्टफोन सही समय कैसे जानता है? इस जादू के पीछे timestamp है — एक डिजिटल मार्क जो मिलीसेकंड की सटीकता के साथ पल को रिकॉर्ड करता है। अगर आप Kotlin में Android ऐप बना रहे हैं, तो देर-सबेर आपको "Android get current timestamp" की समस्या का सामना करना पड़ेगा।

\n\n

यह सवाल Stack Overflow पर सबसे लोकप्रिय में से एक है (हज़ारों व्यूज़!)। और इसमें कोई आश्चर्य नहीं: लगता है सब कुछ आसान है, लेकिन व्यवहार में शुरुआती लोग मिलीसेकंड, सेकंड, टाइमज़ोन और पुराने क्लासेस के बीच उलझ जाते हैं। इस लेख में हम Android में Kotlin से current timestamp प्राप्त करने के सभी तरीकों को कवर करेंगे — बेसिक से लेकर एडवांस्ड तक। आप जानेंगे कि अपने काम के लिए कौन सा तरीका चुनें और सामान्य गलतियों से कैसे बचें।

\n\n

Timestamp क्या है और Android में इसकी आवश्यकता क्यों है?

\n\n

Timestamp (समय मार्क) एक संख्या है जो एक निश्चित संदर्भ बिंदु से बीते समय को दर्शाती है। सबसे अधिक उपयोग Unix timestamp का होता है — 1 जनवरी 1970, 00:00:00 UTC से मिलीसेकंड (या सेकंड) की संख्या। Android में इसकी आवश्यकता क्यों है?

\n\n
    \n
  • इवेंट लॉगिंग — उपयोगकर्ता की गतिविधियों को रिकॉर्ड करना।
  • \n
  • डेटा सिंक्रोनाइज़ेशन — सर्वर पर समय भेजना।
  • \n
  • कैशिंग — डेटा की पुरानी जांच करना।
  • \n
  • एनिमेशन और टाइमर — बीते समय की गणना।
  • \n
  • डेटाबेस — रिकॉर्ड को समय के अनुसार सॉर्ट करना।
  • \n
\n\n

Kotlin में Android डेवलपमेंट में timestamp प्राप्त करने के लिए आपके पास कई टूल हैं। आइए उन्हें सरल से जटिल की ओर देखें।

\n\n

तरीका 1: System.currentTimeMillis() — क्लासिक तरीका

\n\n

मिलीसेकंड में current timestamp प्राप्त करने का सबसे सरल और तेज़ तरीका System.currentTimeMillis() का उपयोग करना है। यह मेथड Java में है और Kotlin में पूरी तरह से उपलब्ध है।

\n\n
val currentTimestampMillis = System.currentTimeMillis()\nprintln("वर्तमान timestamp (ms): $currentTimestampMillis")
\n\n

फायदे:

\n
    \n
  • बहुत तेज़ (नेटिव कॉल)।
  • \n
  • अतिरिक्त import की आवश्यकता नहीं।
  • \n
  • Android के सभी वर्ज़न पर काम करता है।
  • \n
\n\n

नुकसान:

\n
    \n
  • केवल मिलीसेकंड रिटर्न करता है।
  • \n
  • डिवाइस के सिस्टम टाइम से जुड़ा है (उपयोगकर्ता इसे बदल सकता है)।
  • \n
  • टाइमज़ोन को ध्यान में नहीं रखता — यह सिर्फ एक संख्या है।
  • \n
\n\n

यह तरीका इंटरवल मापने (जैसे कोड एक्ज़ीक्यूशन टाइम) या तुलना के लिए त्वरित संख्या चाहिए तो आदर्श है।

\n\n

तरीका 2: Instant.now() — आधुनिक तरीका (Java 8+)

\n\n

API लेवल 26 (Android 8.0) और उससे ऊपर से, आप java.time.Instant क्लास का उपयोग कर सकते हैं। यह आधुनिक टाइम API का हिस्सा है जो पुराने क्लासेस की कई समस्याओं को हल करता है।

\n\n
import java.time.Instant\n\nval instant = Instant.now()\nval timestampMillis = instant.toEpochMilli()\nval timestampSeconds = instant.epochSecond\n\nprintln("Instant: $instant")\nprintln("Timestamp (ms): $timestampMillis")\nprintln("Timestamp (sec): $timestampSeconds")
\n\n

फायदे:

\n
    \n
  • साफ, आधुनिक API।
  • \n
  • आसानी से अन्य फ़ॉर्मेट में बदला जा सकता है।
  • \n
  • डिफ़ॉल्ट रूप से UTC के साथ काम करता है।
  • \n
\n\n

नुकसान:

\n
    \n
  • API 26+ की आवश्यकता (पुराने डिवाइसों के लिए desugaring या ThreeTenABP लाइब्रेरी चाहिए)।
  • \n
\n\n

अगर आपका ऐप आधुनिक डिवाइसों के लिए है, तो timestamp प्राप्त करने के लिए Instant.now() सबसे अच्छा विकल्प है।

\n\n

तरीका 3: Calendar — पुराना लेकिन अभी भी उपयोगी

\n\n

java.util.Calendar क्लास एक पुराना तरीका है जो अभी भी

ब्लॉग

पुस्तक अनुशंसाएँ