2010-02-16 488 views
4

嗨,我一直在研究android中的報警管理器,並想知道是否有設置鬧鐘的具體時間(或可以使用通知管理器)在特定時間例如明天下午12點關閉。 下面的代碼將鬧鐘設置爲從現在開始的5秒鐘,所以將它設置爲像12點這樣的東西,你可以做一些類似於12:00:00的事情嗎?Android報警管理器

Intent intent = new Intent(this, OnetimeAlarmReceiver.class); 
    PendingIntent pendingIntent = PendingIntent.getBroadcast(context, REQUEST_CODE, intent, 0); 

AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE); 
alarmManager.set(AlarmManager.RTC_WAKEUP, System.currentTimeMillis() + (5 * 1000), sender); 
Toast.makeText(this, "Alarm set", Toast.LENGTH_LONG).show(); 

回答

12

Java的日期和時間庫是一個巨大的麻煩,但是這應該給你一個想法:

// the time now 
Calendar calendar = Calendar.newInstance(); 

// noon tomorrow 
calendar.add(Calendar.DAY_OF_YEAR, 1); 
calendar.set(Calendar.HOUR_OF_DAY, 12); 
calendar.set(Calendar.MINUTE, 0); 
calendar.set(Calendar.SECOND, 0); 

alarmManager.set(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), sender); 
    Toast.makeText(this, "Alarm set", Toast.LENGTH_LONG).show(); 
+0

非常感謝我會盡力,並與合作那稍後。 – SamB09

+0

沒問題。不要忘記,你可以upvote和接受迴應:)這將保持人們的動機回答你的問題 – emmby

+0

我試過了,它的工作非常感謝。 – SamB09

0
Calendar calendar = Calendar.getInstance(TimeZone.getDefault(), Locale.getDefault()); 

這應該工作