Take a look at http://developer.android.com/reference/android/app/Service.html It depends on how you are starting the service.
On Feb 9, 5:25 am, AndroidGirl8 <walaamahmou...@gmail.com> wrote: > Hi all, > i'm trying to make service getting twitter update by a thread every > 5secs > start service just fine and getting new twittes and inserting to > database but i cant close service and it continue working untill force > close > > here is my code : > > public class UpdaterServices extends Service { > > private static final String TAG = > UpdaterServices.class.getSimpleName(); > updater up; > > @Override > public IBinder onBind(Intent intent) { > // TODO Auto-generated method stub > return null; > } > > @Override > public void onCreate() { > super.onCreate(); > up = new updater(); > Log.d(TAG, "check on create"); > } > > @Override > public synchronized void onStart(Intent intent, int startId) { > super.onStart(intent, startId); > > if (up.isRunning() == false) { > up.start(); > Log.d(TAG, "check onstart"); > } > } > > @Override > public synchronized void onDestroy() { > > super.onDestroy(); > > if (up.isRunning() == true) { > > up.interrupt(); > } > up = null; > Log.d(TAG, "check ondestroy"); > > } > > class updater extends Thread { > > final static int Delay = 5000; > private boolean running = false; > > public void run() { > > running = true; > while (running) { > try { > > // ///open database and inserting > what we get from twitter > // into our sqlite new schema > DBHelper dhhelper = new > DBHelper(UpdaterServices.this); > SQLiteDatabase db = > dhhelper.getWritableDatabase(); > > Twitter twitter = > ((MarkanaApplication) getApplication()) > .gettwitter(); > List<Status> s = > twitter.getFriendsTimeline(); > ContentValues value = new > ContentValues(); > for (Status w : s) { > value.put(DBHelper.C_ID, > w.id); > > value.put(DBHelper.C_CreatedAt, w.createdAt.getTime()); > value.put(DBHelper.C_User, > w.user.name); > value.put(DBHelper.C_Text, > w.text); > > try { > > db.insertWithOnConflict(DBHelper.Table, null, > > value, SQLiteDatabase.CONFLICT_REPLACE); > } catch (Exception e) { > > } > > Log.d(TAG, String.format("%s > %s", w.user.name, w.text)); > > } > > // ///close databases which we opened > > db.close(); > dhhelper.close(); > > Log.d(TAG, "running thread"); > Thread.sleep(Delay); > > } catch (InterruptedException e) { > running = false; > > } > > } > > } > > public boolean isRunning() { > > return running; > > } > > } > > } > > what is wrong in my code or how can stop service when user click on > stop ?? > another question what better using Asynctask instead of service > cause i can control in it better than service or service just fine ?? -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en