آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

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

hojjati  12 سال پیش  12 سال پیش
+5 0

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

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

 برای این سوال 2 پاسخ وجود دارد.
پاسخ به سوال 
sadeghbarout  12 سال پیش
+3 0

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

 - اگه میخوای حین اجرای برنامه ات این کارو کنی که باید از 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 ها

0 0
خیلی ممنون حتما میخوانم امیدوارم مفید باشه. بابت راهنمایی تان هم پیشاپیش سپاسگذارم. (12 سال پیش)
0 0
خواهش میکنم.موفق باشید (12 سال پیش)
پاسخ به سوال 
ajn91  12 سال پیش
+5 0

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

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

    @Override
    public void run() {
        //do some things
    }
}, delay, period);
0 0
سلام ممنون فقط میشه یکم توضیح بدهید که delay، و period دقیقا مقدارشان برحسب چی هست ؟ یعنی ثانیه ، دقیقه و...؟ دوما برای اجرای این کد برنامه باید باز باشه یا تو پس زمینه هم اجرا میشه؟ (12 سال پیش)
0 0
خیلی جالب بود . تا حالا این کدو ندیده بودم. ظاهرا تا وقتی که برنامه تو حافظه باشه تایمرش کار میکنه وبا بستن خالی برنامه ، کارش متوقف نمیشه و حتما باید از حافظه خارج شه مثلا با taskkiller یا همون دکمه گوشی که لیست برنامه های تو حافظه رو میاره . period ت رو برای 1 دقیقه باید بذاری 60000 . delay هم تاخیر اجرای کد از زمان خوندن کده (12 سال پیش)

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