AndroidManifest.xml dosyası içine application taginin içine aşağıdaki şekilde Servisi eklemeliyiz.

    
        <application>
        ...   
        <service android:name=".Servis"/>
        </application>
//Activity içinde servis başlatma
Intent serviceIntent = new Intent(getApplicationContext(), Servis.class);
						startService(serviceIntent);

//Activity içinde çalışan servisi durdurma
 Intent serviceIntent = new Intent(getApplicationContext(), Servis.class);
						stopService(serviceIntent);
package com.example.deneme;
import java.util.Timer;
import java.util.TimerTask;
import android.app.Service;
import android.content.Intent;
import android.os.Handler;
import android.os.IBinder;
import android.os.Looper;
 
public class Servis extends Service  {
 
    Timer timing;
    Handler helper;
 
    final static long scheduleTime = 1000;
 
    @Override
    public IBinder onBind(Intent intent) 
    {
        return null;
    }
 
    @Override
    public void onCreate() 
    {
        // TODO Auto-generated method stub
        super.onCreate();
 
        timing = new Timer();
        helper= new Handler(Looper.getMainLooper());
 
        
        timing.scheduleAtFixedRate(new TimerTask() {
        	 
            @Override
            public void run() {
                callMethod();
            }
 
            private void callMethod() {
                helper.post(new Runnable() {
                    public void run() 
                    {
                       //servis çağrıldığında çalıştırılacak metod buraya yazılmalıdır
                    }
                });
            }
             
        }, 0, scheduleTime); 
    }
        
    @Override
    public void onDestroy() 
    {
        timing.cancel();
        super.onDestroy();
    }
}

Yazar : Emrah Kahraman

Bilgisayar Mühendisi

“Android Activity Service Kullanımı” için 8 Yorum

  1. Mesut dokumacı dedi ki:

    Merhaba

    çok güzel yazı çok teşkkürler
    Ben sizden gördüm yapmaya çalışırken
    helper= new Handler(Looper.getMainLooper());
    bu kısımda hata alıyorum yardımcı olurmusunuz

  2. Emrah Kahraman dedi ki:

    Nasıl bir hata alıyorsunuz?

  3. Mesut dokumacı dedi ki:

    Bu hatayı alıyorum bi türlü çözüm yolu bulamadım

    Handler () in java.util.logging.Handler cannot be applied to (android.os.Looper)

  4. Emrah Kahraman dedi ki:

    import java.util.logging.Handler kısmını aşağıdaki şekilde düzeltmelisin.

    import android.os.Handler;

  5. Mesut dokumacı dedi ki:

    Çok teşekkürler dediğiniz gibi oldu. İyi çalışmalar

  6. esat dedi ki:

    s.a. bunu aynı şekilde eklediğimde kısmı hata veriyor yeni android studio da uygu şekilde çevirebilir misiniz ?

  7. Deniz dedi ki:

    Merhaba , arkaplan da çalışır mı bu?

  8. Atakan Ulusoy dedi ki:

    Hocam bu kodlar ne işe yarıyor anlamadım.
    Yada şöyle sorayım aradığım şey bu mu?

    Ben bir butona basınca textview de geçen süreyi yazdırıyorum. ama uygulama kapatıldığında herşey kapanıyor ve süre sayma işide iptal olmuş oluyor.

    Şimdi bu kodlar ile textviewdaki süre saymaya devam edebilir mi?

Android Activity Service Kullanımı Yazısı için Yorum Yapabilirsiniz

Kan Bağışı
Sponsor
Alexa
Hakkımda
Bağlantılar