Android’de 1 Dakikalık Tekrarlayan Zamanlayıcı Oluşturma
Android uygulamalarında zamanlayıcılar, belirli bir süre sonra bir işlemi tetiklemek için yaygın olarak kullanılır. Bu makalede, Android’de 1 dakikalık tekrarlayan bir zamanlayıcı oluşturma adımlarını ayrıntılı olarak inceleyeceğiz.
Adım 1: Zamanlayıcı Sınıfını Oluşturma
İlk olarak, zamanlayıcı işlevselliğini ele alacak bir sınıf oluşturmamız gerekiyor. Bu sınıf, Runnable
arayüzünü uygulayacak ve zamanlayıcıyı başlatmak, durdurmak ve yeniden başlatmak için yöntemler içerecektir.
“`java
public class Timer implements Runnable {
private Handler handler;
private long delay;
private boolean isRunning;
public Timer(long delay) {
this.handler = new Handler();
this.delay = delay;
this.isRunning = false;
}
@Override
public void run() {
// Zamanlayıcı işlemini burada gerçekleştirin
// ...
// Zamanlayıcıyı tekrar başlatın
if (isRunning) {
handler.postDelayed(this, delay);
}
}
public void start() {
if (!isRunning) {
isRunning = true;
handler.postDelayed(this, delay);
}
}
public void stop() {
isRunning = false;
handler.removeCallbacks(this);
}
public void restart() {
stop();
start();
}
}
“`
Adım 2: Zamanlayıcıyı Başlatma
Zamanlayıcı sınıfımızı oluşturduktan sonra, onu uygulamamızda başlatmamız gerekiyor. Bunu, Activity
sınıfımızın onCreate()
yönteminde yapabiliriz.
“`java
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 1 dakikalık tekrarlayan zamanlayıcı oluşturun
Timer timer = new Timer(60000);
// Zamanlayıcıyı başlatın
timer.start();
}
“`
Adım 3: Zamanlayıcı İşlemini Gerçekleştirme
Zamanlayıcı her tetiklendiğinde, run()
yöntemimiz çağrılacaktır. Bu yöntem içinde, zamanlayıcı işlemini gerçekleştirebiliriz. Örneğin, bir metin görünümünün metnini güncelleyebilir veya bir API çağrısı yapabiliriz.
“`java
@Override
public void run() {
// Metin görünümünün metnini güncelleyin
TextView textView = findViewById(R.id.text_view);
textView.setText(“Zamanlayıcı tetiklendi!”);
// Zamanlayıcıyı tekrar başlatın
if (isRunning) {
handler.postDelayed(this, delay);
}
}
“`
Adım 4: Zamanlayıcıyı Durdurma ve Yeniden Başlatma
Zamanlayıcıyı durdurmak veya yeniden başlatmak için stop()
ve restart()
yöntemlerini kullanabiliriz. Bu yöntemler, Activity
sınıfımızın onPause()
ve onResume()
yöntemlerinde çağrılabilir.
“`java
@Override
protected void onPause() {
super.onPause();
// Zamanlayıcıyı durdurun
timer.stop();
}
@Override
protected void onResume() {
super.onResume();
// Zamanlayıcıyı yeniden başlatın
timer.restart();
}
“`
Faydalı Kaynaklar
Sonuç
Bu makalede, Android’de 1 dakikalık tekrarlayan bir zamanlayıcı oluşturma adımlarını ayrıntılı olarak inceledik. Bu zamanlayıcıyı, uygulamalarınızda belirli aralıklarla işlemleri tetiklemek için kullanabilirsiniz.