Arkadaşlar Merhaba;

Yapmış olduğum uygulamada SQL Servardan json ile veri çekme işlemini gerçekleştirmek istiyorum. Uygulamanın telefon açıldığı andan itibaren çalışıp her beş dakikada bir verileri çekmesini istiyorum. Gelecek olan veriler rakamsal olacak ve benim belirlemiş olduğum değer altında veri gelirle bildirim olarak beni uyarmasını istiyorum bunu nasıl yapabilirim.

Birçok servis uygulaması inceledim fakat hepsinde servisin başlangıcını button ile yapmışlar.

Servis içinde json ile veri çekme işlemini nasıl yapabilirim ve çekilen verileri uygulamayı açtığımda textViewlerde nasıl görebilirim?

Yardımlarınızı bekliyorum. Teşekkürler.

İyi çalışmalar

soruldu: 12 Şub '15, 15:09

mesut_doku's gravatar image

mesut_doku
25334
cevap kabul oranı: 0%

değiştirildi: 12 Şub '15, 15:15


su isinize yarar mi?

servis icin sinifi su sekilde yazin

public class CekiciService extends Service {
   //...
   private Timer timer;
   private TimerTask updateTask = new TimerTask() {
      //...
      @Override
    public void run() {
          //...
        }
    };

    @Override
     public IBinder onBind(Intent intent) {
    //...
    }
     @Override
      public void onCreate() {
            timer = new Timer("CekiciTimer");
           timer.schedule(updateTask, 1000L, 5 * 1000L);
      }
      @Override
  public void onDestroy() {
    super.onDestroy();

    timer.cancel();
    timer = null;
  }

sonra bunu main activity de oncreate de su sekilde cagir. buton olayina filan baglamadan.

public class MainActivity extends Activity {
   //...
   @Override
   public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
      //....
      startService(new Intent(this, CekiciService.class ));
      //....
   }
 //...
 }

json ile veri cekme icin de, yukarida CekiciService servisindeki run metodunda URLConnection kullanabilirsin. buradan donenleri de

JSONObject jo = new JSONObject(donenString);

seklinde json nesnesi haline getirip, kullanabilirsin.

permanent link

cevaplandı: 14 Şub '15, 11:44

tafali's gravatar image

tafali
4593412
cevap kabul oranı: 12%

Merhaba json ile parse edeceğim veri çok fazla servis verileri çekerken her hangi bir kasma vb yapar mı ? Ben aşağıdaki gibi servis oluşturdum ama handler = new Handler(looper) burda hata alıyorum looperın altı çizili şu hatayı alıyorum

Handler in java.util.logging.Handler cannot be applied to (android.os.Looper) SEbebi ne olabilir. bunu çözemedim Teşekkürler yardımınız için

public class service_deneme extends Service { Timer timing; Looper looper; Handler handler;

final static long scheduleTime = 1000;

@Override
public IBinder onBind(Intent intent) {
    // TODO Auto-generated method stub
    return null;
}

@Override
public void onCreate() {
    // TODO Auto-generated method stub
    super.onCreate();
    timing = new Timer();
    Looper.getMainLooper();
    looper.prepareMainLooper();
    handler = new Handler(looper) {
        @Override
        public void close() {

        }

        @Override
        public void flush() {

        }

        @Override
        public void publish(LogRecord record) {

        }
    };

    timing.scheduleAtFixedRate(new TimerTask() {

        @Override
        public void run() {
            Looper.prepare();
            callMethod();
        }

        private void callMethod() {
            handler.post(new Runnable() {
                @Override
                public void run() {

                }
            });
         }
}, 0, scheduleTime);

}

@Override
public void onDestroy() {
    timing.cancel();
    super.onDestroy();
}

}

permanent link

cevaplandı: 14 Şub '15, 17:53

mesut_doku's gravatar image

mesut_doku
25334
cevap kabul oranı: 0%

Cevabınız
toggle preview

Bu soruyu takip et

E-Posta üzerinden:

Üyelik girişi yaptıktan sonra abonelik işlemlerini yapabilirsiniz

RSS üzerinden:

Cevaplar

Cevaplar ve Yorumlar

Yazı Formatlama

  • *italic* ya da _italic_
  • **bold** ya da __bold__
  • link:[text](http://url.com/ "başlık")
  • resim?![alt text](/path/img.jpg "başlık")
  • liste: 1. Foo 2. Bar
  • temel HTML etiketleri de kullanılabilir

Bu sorunun etiketleri:

×819
×39
×17

Soruldu: 12 Şub '15, 15:09

Görüntüleme: 679 kez

Son güncelleme: 14 Şub '15, 17:53

powered by BitNami OSQA