2012-07-25 29 views
5

Bir alarm saati uygulaması kodluyorum ve ne olacağını bilmek istiyorum, AlarmManager ile bir alarm ayarladığımda, örneğin, saat 2:59 am (bu benim alarm zamanım değil, bu sadece zaman set bazı alarmlar) ve saat 3:00 da yaz saatinden kışın (DST) otomatik zaman değişimi olacak. Programlı alarmım ne olacak? Dokümanlarda hiçbir şey bulamadım ve test etmek o kadar kolay değil, en azından tarihleri ​​değiştirmeli ve birkaç saat beklemeliyim ... Çok sabırlı değilim;)Android AlarmManager ve DST/Saat Dilimi/Saat değişikliği?

Sonraki problem - Ben de merak ettim, ne ile kullanıcı saat dilimini değiştirdiğinde alarmlarım AlarmManager ile ayarlandı. Bu neyse ki test etmek oldukça kolaydı, ve ben, bu android oldukça "akıllı" ve otomatik olarak alarm yeniden ayarlanmış bulundu. Saat dilimimde saat 9: 00'da ve saat 10: 00'da alarm verdiğimde ve gerçek zamanlı saat 10: 00'da saat dilimini (+1 saat) değiştirdiğimde, android beklediğim gibi alarmımı saat 11: 00'e ayarladı. Bu çok iyi, ancak, dokümanlar da bir şey bulamadım ...

Daha fazla resmi bilgiye sahip olan var mı? vb

cevap

10

RTC ve RTC_WAKEUP kullanımı System.currentTimeMillis() yalnızca Sistem zamanında bağlıdır. Alarm, gün ışığı tasarruflarından etkilenmez, sadece sistem zamanı değişir. Alarm, sistem saatine göre ve cihaz hangi dilde olursa olsun, aygıtın içinde (veya içeride)

+1

büyük olduğunu bilmek istediğim şey. Thx çok ... Ben de dokümanlar içinde bulundu, benim hatam. – qkx

+1

Bununla birlikte, kullanıcı el ile tarih ve saat ayarlarına girer ve sistem saatini/tarihini değiştirirse, bu sizi hala etkileyecektir. – matt5784

3

Alarm UTC zamanı olduğunu ve bu nedenle zaman dilimi değişiklikleri, yaz saati değişikliklerden bağımsız olduğunu zaman tabanı, gibi Thx