Majid Ebrahimi 19 ارسال شده در ۱۷ مرداد ۱۳۹۲ گزارش اشتراک گذاری ارسال شده در ۱۷ مرداد ۱۳۹۲ سلام دوستان.من می خواستم نرم افزارم طوری اجرا بشه که مثلا هر سه دقیقه یک بار بک گراند عوض بشه. کد زیر رو هم توی سایت استک اورفلو پیدا کردم.اما نمی دونم چطور از آن استفاده کنم. لطفا اگر کد صحیح است کمک کنید. public class Wallpaper extends Service { Timer mytimer; int interval = 60000; Drawable drawable; WallpaperManager wpm; int prev = 1; @Override public void onCreate() { super.onCreate(); mytimer = new Timer(); wpm = WallpaperManager.getInstance(Wallpaper.this); } @Override public int onStartCommand(Intent intent, int flags, int startId) { mytimer.schedule(new TimerTask() { @Override public void run() { if (prev == 1) { drawable = getResources().getDrawable(R.drawable.two); prev = 2; } else if (prev == 2) { drawable = getResources().getDrawable(R.drawable.three); prev = 3; } else { drawable = getResources().getDrawable(R.drawable.one); prev = 1; } Bitmap wallpaper = ((BitmapDrawable) drawable).getBitmap(); try { wpm.setBitmap(wallpaper); } catch (IOException e) { e.printStackTrace(); } } }, 200, interval); return super.onStartCommand(intent, flags, startId); } @Override public IBinder onBind(Intent arg0) { return null; }} نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر
Farzad Sarseifi 575 ارسال شده در ۱۷ مرداد ۱۳۹۲ گزارش اشتراک گذاری ارسال شده در ۱۷ مرداد ۱۳۹۲ سرویس را در Activity خود ،در یک Handler قرار بدین تا هر سه دقیقه یکبار برنامه این قسمت را اجرا کند. private void check() { final Handler handler = new Handler(); final Thread r = new Thread() { public void run() { Intent intent = new Intent(this, Service_class.class); PendingIntent pintent = PendingIntent.getService( NoteActivity.this, 0, intent, 0); handler.postDelayed(this, 1200000); } }; r.start(); } این کد هر دو دقیقه یکبار اجرا خواهد شد،شما Time مورد نظر خود را قرار بدهید نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر
Majid Ebrahimi 19 ارسال شده در ۱۷ مرداد ۱۳۹۲ مالک گزارش اشتراک گذاری ارسال شده در ۱۷ مرداد ۱۳۹۲ خیلی ممنون از پاسختون.ولی وقتی متد بالا را اضافه و برنامه رو ران کردم.دو خطا رخ داد.اگر کمک کنید ممنون میشم. NoteActivity cannot be resolved to a typethe constructor Intent(new Thread(){},class کدی که برای کلاس wallpaper گذاشته بودم درست هست؟ نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر
javadmahmoodi 10 ارسال شده در ۱۸ مرداد ۱۳۹۲ گزارش اشتراک گذاری ارسال شده در ۱۸ مرداد ۱۳۹۲ خب noteActivity رو بردارید و اسم کلاس خودتون رو جایگزین کنید. نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر
Majid Ebrahimi 19 ارسال شده در ۱۸ مرداد ۱۳۹۲ مالک گزارش اشتراک گذاری ارسال شده در ۱۸ مرداد ۱۳۹۲ این کار را کردم اما درست نشد.نظرتون در مورد خطای دوم چیه؟ نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر
javadmahmoodi 10 ارسال شده در ۱۸ مرداد ۱۳۹۲ گزارش اشتراک گذاری ارسال شده در ۱۸ مرداد ۱۳۹۲ بدین صورت عمل کنید : Intent intent = new Intent(this, Service_class.class); PendingIntent pintent = PendingIntent.getService( NoteActivity.this, 0, intent, 0); بجای Service_class اسم سرویس خودتون را بنویسید تا بعد از دو دقیقه سرویس مربوطه اجرا شود. سپس به جای noteActivity.this اسم اکتیویتی جاری خود را بنویسید. لطفا کلاس سرویس خود را که نوشته اید در انجمن قرار دهید. نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر
پست های پیشنهاد شده
به گفتگو بپیوندید
هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .