導航:首頁 > 操作系統 > android定時器

android定時器

發布時間:2022-01-14 02:49:28

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定時器的問題

私信給你了

③ android怎麼設置一個定時的任務

我知道的有三種方法;
方法一:可以通過android自帶的Handler機制,裡面有new Handler().postDelayed(new Runnable(){
@Override
public void run() {
//延遲的時間到了執行
}
},延遲的時間);

方法二:可以通過java裡面的線程來寫,new Thread().sleep(延遲時間);時間到了會繼續執行;
方法三:java定時器(有很多方法)例如:
Timer timer = new Timer();
timer.schele(new TimerTask() {
public void run() {
System.out.println("-------設定要指定任務--------");
}
}, long delay,long period);
delay延遲的時間,period為多久執行一次;
個人推薦用方法一,畢竟安卓系統自帶的,並且安卓不適合加定時器,如果處理不當一直執行的話,要麼卡,要麼程序崩潰。還有發布版本可能審核不通過。

④ 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);
}
};

⑥ 有關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 定時器暫停 可以用canel()方法 但我又想再次喚起 用什麼方法

android 定時器是一個線程,線程canel 以後,只能重新new 並調用 start啟動。

具體實現代碼:

  1. 創建線程定時器同理

    Thread thread = new Thread();

    thread.start(); 啟動線程

  2. 當線程或定時器停止後,需要重新new

    thread = new Thread();

thread.start(); 重新啟動線程或定時器

⑧ android 哪種 定時器比較好

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定時器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 可以正常的休眠,只有在需要運行任務時醒來一段很短的時間。

閱讀全文

與android定時器相關的資料

熱點內容
伺服器如何開啟上網嗎 瀏覽:157
永久修改linuxip 瀏覽:746
每個文件單獨壓縮 瀏覽:468
你編譯一下 瀏覽:848
程序員打車票 瀏覽:100
厚大119pdf 瀏覽:979
jpeg開源編譯cjpeg 瀏覽:86
無主之地免安裝版要全部解壓嗎 瀏覽:631
什麼拼圖軟體不壓縮 瀏覽:864
蘋果app更新不了軟體怎麼辦 瀏覽:768
程序員的發展是 瀏覽:294
廣州孕期吃溯源碼燕窩批發價格表 瀏覽:946
加密貨幣前端系統 瀏覽:532
河北白溝dns伺服器地址雲空間 瀏覽:209
電子護照加密 瀏覽:712
峰雲伺服器獲取不到列表 瀏覽:882
河南文件加密系統怎麼選 瀏覽:664
東芝美芝壓縮機 瀏覽:690
武漢app製作平台哪裡做得好 瀏覽:645
未編譯此類問題怎麼解決 瀏覽:247