हाँ जावा के टाइमर का उपयोग किया जा सकता है , लेकिन जैसा कि प्रश्न बेहतर तरीके से (मोबाइल के लिए) पूछता है । जो यहाँ समझाया गया है ।
StackOverflow के लिए:
चूंकि टाइमर एक नया धागा बनाता है, इसलिए इसे भारी माना जा सकता है,
यदि आप सभी की जरूरत है एक कॉल बैक है, जबकि गतिविधि चल रही है एक हैंडलर एक के साथ संयोजन के रूप में इस्तेमाल किया जा सकता है
चलने योग्य :
private final int interval = 1000; // 1 Second
private Handler handler = new Handler();
private Runnable runnable = new Runnable(){
public void run() {
Toast.makeText(MyActivity.this, "C'Mom no hands!", Toast.LENGTH_SHORT).show();
}
};
...
handler.postAtTime(runnable, System.currentTimeMillis()+interval);
handler.postDelayed(runnable, interval);
या एक संदेश
private final int EVENT1 = 1;
private Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
switch (msg.what) {
case Event1:
Toast.makeText(MyActivity.this, "Event 1", Toast.LENGTH_SHORT).show();
break;
default:
Toast.makeText(MyActivity.this, "Unhandled", Toast.LENGTH_SHORT).show();
break;
}
}
};
...
Message msg = handler.obtainMessage(EVENT1);
handler.sendMessageAtTime(msg, System.currentTimeMillis()+interval);
handler.sendMessageDelayed(msg, interval);
एक साइड नोट पर इस दृष्टिकोण का उपयोग किया जा सकता है, यदि आप यूआई थ्रेड में कोड का एक टुकड़ा दूसरे धागे से चलाना चाहते हैं।
अगर आपको कॉल बैक करने की आवश्यकता है, भले ही आपकी गतिविधि नहीं चल रही हो, तो आप एक अलार्म मैनजर का उपयोग कर सकते हैं