私が定義したハンドラーは、sendEmptyMessageAtTime で設定されたメッセージを取得しません。updateTime.getTimeInMillis から取得した時間は有効です。ここで何が欠けていますか?
@Override
protected void onResume() {
super.onResume();
mNavigationBarFragment.configureFor(0);
Calendar updateTime = Calendar.getInstance();
updateTime.set(Calendar.YEAR, 2012);
updateTime.set(Calendar.HOUR_OF_DAY, 18);
updateTime.set(Calendar.MINUTE, 40);
updateTime.set(Calendar.SECOND, 0);
if(mUpdateOnAirLabel.sendEmptyMessageAtTime(1, updateTime.getTimeInMillis())){
// messages gets placed
}
}
private Handler mUpdateOnAirLabel = new Handler() {
public void dispatchMessage(android.os.Message msg) {
// doesn't get triggered
}
public void handleMessage(android.os.Message msg) {
// doesn't get triggered
}
};
UPD カレンダーオブジェクトから取得した時間は正しいです:
<?php
echo date("r", 1348753200578 / 1000);
出力: 2012 年 9 月 27 日木曜日 17:40:00 +0400
その後、現在のタイムスタンプからオフセットしようとしました
Calendar now = Calendar.getInstance();
long nowt = now.getTimeInMillis();
if(mUpdateOnAirLabel.sendEmptyMessageAtTime(1, now.getTimeInMillis() + 5000)){
...
}
そして、それはどちらもトリガーしていません。ここで何が問題なのですか?