بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]
پرسش و پاسخ

خواندن اطلاعات در بازه های زمانی معین

مدیریت گفتگو
hojjati 12 سال پیش
آخرین تغییر: 12 سال پیش

با سلام خدمت دوستان، بچه ها تو آندروید چطور میشه یه کاری را زمان بندی کرد که مثلا هر 1 دقیقه یکبار یه کاری را بکند مثلا هر 1یا 2 دقیقه یکبار مقدار اطلاعات سنسور Acceleration  یا سنسور GPS را بخواند.

روش خواندن اطلاعات را بلد هستم ها، میخواهم یه کاری کنم بصورت خودکار تو بازه های زمانی معین این اطلاعات را بگیرد.منبعی اگر بود هم ممنون میشوم معرفی کنید.

نظرات

پاسخ‌ها 2

sadeghbarout 12 سال پیش

بستگی داره میخوای تو برنامه ات این کار رو بکنی یا در پس زمینه گوشی؟

 - اگه میخوای حین اجرای برنامه ات این کارو کنی که باید از thread ها استفاده کنی

تقریبا از همچین کدی باید استفاده کنی :

 Thread thread = new Thread(new Runnable() {

@Override
public void run() {
while (true) {
try {
Thread.sleep(60000);
//دستورات خواندن سنسور
}
catch (InterruptedException e) {
e.printStackTrace();
}
}

}
});
thread.start();

-  اگه میخوای توی پس زمینه گوشی و موقعی که برنامه ات بسته است این کارو کنی باید از Service ها و AlarmManager استفاده کنی

اینم یه آموزش درباره service هاست : آموزش طریقه استفاده از Service ها

نظرات

hojjati 12 سال پیش
خیلی ممنون حتما میخوانم امیدوارم مفید باشه. بابت راهنمایی تان هم پیشاپیش سپاسگذارم.
sadeghbarout 12 سال پیش
خواهش میکنم.موفق باشید
ajn91 12 سال پیش

میتونید از کلاس Timer هم استفاده کنید

Timer timer = new Timer();
timer.scheduleAtFixedRate(new TimerTask() {

    @Override
    public void run() {
        //do some things
    }
}, delay, period);

نظرات

hojjati 12 سال پیش
سلام ممنون فقط میشه یکم توضیح بدهید که delay، و period دقیقا مقدارشان برحسب چی هست ؟ یعنی ثانیه ، دقیقه و...؟ دوما برای اجرای این کد برنامه باید باز باشه یا تو پس زمینه هم اجرا میشه؟
sadeghbarout 12 سال پیش
خیلی جالب بود . تا حالا این کدو ندیده بودم. ظاهرا تا وقتی که برنامه تو حافظه باشه تایمرش کار میکنه وبا بستن خالی برنامه ، کارش متوقف نمیشه و حتما باید از حافظه خارج شه مثلا با taskkiller یا همون دکمه گوشی که لیست برنامه های تو حافظه رو میاره . period ت رو برای 1 دقیقه باید بذاری 60000 . delay هم تاخیر اجرای کد از زمان خوندن کده

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .