當前位置:首頁 » 安卓系統 » android定時器

android定時器

發布時間: 2022-02-10 23:22:25

Ⅰ Android定時器程序源代碼

使用TimerTask,網路上有的是例子

Ⅱ android 哪種 定時器比較好

AlarmManager

這個可以喚醒cpu。

其他的在屏幕關掉後不會運行

Ⅲ android 定時器如何讓某天某個時間啟動

Android中使用AlarmManager進行定時操作,現在需要啟動多個定時器,但無論採用哪種方式後面的定時器都會將前面的定時器覆蓋掉(Android系統版本2.1),只啟動最後一個定時器,見代碼 java code// 方式一for (int i = 0; i < 10; i ++) { ... AlarmManager am = null; am = (AlarmManager) context.getApplicationContext().getSystemService(Context.ALARM_SERVICE); ... Intent i = new Intent("xxx"); PendingIntent sender = PendingIntent.getBroadcast(context.getApplicationContext(), 0, i, PendingIntent.FLAG_UPDATE_CURRENT); ... am.setRepeating(...);}// 方式二AlarmManager am = null;am = (AlarmManager) context.getApplicationContext().getSystemService(Context.ALARM_SERVICE);for (int i = 0; i < 10; i ++) { ... Intent i = new Intent("xxx"); PendingIntent sender = PendingIntent.getBroadcast(context.getApplicationContext(), 0, i, PendingIntent.FLAG_UPDATE_CURRENT); ... am.setRepeating(...);} 請問如果要實現啟動多個定時器應該怎麼操作?Android系統的鬧鍾就是採用AlarmManager進行操作的,如何才能啟動多個定時器呢?先謝謝大家了 ------解決方案-------------------- public static PendingIntent getBroadcast(Context context, int requestCode, Intent intent, int flags) requestCode 需要是唯一的

Ⅳ android定時器是否會被系統殺死

系統自帶的不會,第三方的會。但是都不能放到後台運行,不然可能會因為RAM不足而自動釋放空間。

Ⅳ 有關Android中定時器的問題

你這里犯了一個基本的錯誤。
你的timer是沒有問題的,問題在Toast.makeText(e201301.this, "ABCD", Toast.LENGTH_LONG).show();中。

另外你說沒有報錯,我不太相信,logcat裡面應該會有log出來的。除非你的logcat有問題。
另外把Toast.makeText(e201301.this, "ABCD", Toast.LENGTH_LONG).show();
換成其他基本的語句應該是不會有問題的。

這里的問題主要出在你用timer開了一個新線程,然後你希望在新線程裡面,直接在UI線程上顯示東西。於是就有錯了。

如果你只是為了測試timer,你可以把Toast.makeText(e201301.this, "ABCD", Toast.LENGTH_LONG).show();
換成Log.e("Timer在運行", "ABCD");
這樣你就會看到logcat裡面,按照你設定的時間,不斷的輸出這句LOG。也就是Timer正常運行了。

如果你依舊希望能在UI線程上顯示什麼,那麼你可以參考下線程間通信的handle、Message。或者簡單利用AsyncTask等

Ⅵ android定時器alarmmanager和timer的區別

Java的Timer類可以用來計劃需要循環執行的任務。
簡單的說,一個Timer內部封裝裝了「一個Thread」和「一個TimerTask隊列」,這個隊列按照一定的方式將任務排隊處理。封裝的Thread在Timer的構造方法調用時被啟動,這個Thread的run方法按照條件去循環這個TimerTask隊列,然後調用TimerTask的run方法。

但是,如果CPU進入了休眠狀態,那麼這個thread將會因為失去CPU時間片而阻塞,從而造成我們需要的定時任務失效。上述定時任務失效的場景分析:假設定時任務的條件是到了時間xx:yy才能執行,但由於cpu休眠造成線程阻塞的關系,當前系統時間超過了這個時間,即便CPU從終端中恢復了,那麼由於條件不滿足,定時任務在這一次自然就失效了。

它需要用WakeLock讓CPU 保持喚醒狀態。這樣會大量消耗手機電量,大大減短手機待機時間。這種方式不能滿足需求。

AlarmManager是Android 系統封裝的用於管理RTC的模塊,RTC(Real Time Clock) 是一個獨立的硬體時鍾,可以在 CPU 休眠時正常運行,在預設的時間到達時,通過中斷喚醒CPU。這意味著,如果我們用 AlarmManager 來定時執行任務,CPU 可以正常的休眠,只有在需要運行任務時醒來一段很短的時間。

Ⅶ 安卓定時器Handler如何關閉

{
publicTimeCounts(longmillisInFuture,longcountDownInterval){
super(millisInFuture,countDownInterval);//參數依次為總時長,和計時的時間間隔
}

@Override
publicvoidonFinish(){//計時完畢時觸發

}

@Override
publicvoidonTick(longmillisUntilFinished){//計時過程顯示
//倒計時數可以寫在這兒
}
}

TimeCounts timeCounts = new TimeCounts(30000, 1000);//總時長30s,間隔1s

timeCounts.start();//倒計時開始

timeCounts.cancel();//取消倒計時

Ⅷ 新手對於Android定時器的問題

私信給你了

Ⅸ Android Studio定時器!

你的意思是,假設3個RadioButton,第一個設為10秒,第二個設為20秒,第三個設為30秒,然後一起倒計時到0嗎?如果是這樣的話,只需要在Handler的handleMessage中去減時間就行了。
Handler handler=new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
xx.setText(Integer.parseInt(xx.getText()-1);
}
};

Ⅹ android設置定時器調用時設置時間

你的意思是,假設3個RadioButton,第一個設為10秒,第二個設為20秒,第三個設為30秒,然後一起倒計時到0嗎?如果是這樣的話,只需要在Handler的handleMessage中去減時間就行了。
Handler handler=new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
xx.setText(Integer.parseInt(xx.getText()-1);
}
};

熱點內容
js源碼下載 發布:2024-04-20 15:05:16 瀏覽:19
編譯翻譯的區別 發布:2024-04-20 14:55:53 瀏覽:893
登錄之後qq密碼要在哪裡看 發布:2024-04-20 14:55:03 瀏覽:730
天龍多開腳本 發布:2024-04-20 14:53:05 瀏覽:770
同一段代碼編譯的長度不同 發布:2024-04-20 14:24:14 瀏覽:379
緩存美劇權力的游戲 發布:2024-04-20 14:16:52 瀏覽:987
如何刪除word文件保存密碼 發布:2024-04-20 14:15:18 瀏覽:824
紅米安卓10如何降級到安卓9 發布:2024-04-20 14:13:25 瀏覽:30
ftp目錄遍歷 發布:2024-04-20 13:58:37 瀏覽:970
mysql存儲過程的數組 發布:2024-04-20 13:58:33 瀏覽:60