Bir hizmet cadı bazı zaman hesaplama dayalı bir uyarı tetikler bir android uygulaması var.Android'de Günışığı Tasarrufu Zaman geçişi nasıl algılanır
sorun olduğunda zaman dilimi değişiklikleri (Fransa bulunur ve UTC + 2 için UTC + 1 gider oluyor bir kullanıcı için yani .:). Uygulama bu değişiklik hakkında bilgilendirilmiyor ve bu nedenle uyarıyı bir gecikmeyle tetikliyor.
Zaten TimeZone API android kontrol ve benzeri yardımcı olabilecek bazı yöntemler olduğunu biliyorum:
Hesaplama algoritmamda dikkate almak için değişiklik ne zaman olacağını bilmek MUHTEMEL OLDUĞUNUZU10?
BTW: Zaten bloglar ve Stackoverflow gelen Q/A bir sürü kontrol ama yardımcı olmazsa :(
DÜZENLEME (bildirim dosyası ve alıcı sınıfı):
<receiver android:name=".receiver.NotificationReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<action android:name="android.intent.action.TIMEZONE_CHANGED" />
<!--action android:name="android.intent.action.TIME_SET" /-->
</intent-filter>
</receiver>
Alıcı sınıfı: İşte benim tezahür
Sonra1- Ben olduğu gibi Android Manifest tuttu (soruya bakın)
2- i alıcıyı biraz değişti:
public class NotificationReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
WakeLock.acquire(context);
Intent service = new Intent(context, NotificationService.class);
service.putExtras(intent);
context.startService(service);
// Timezone or time change
if (intent.getAction() != null
&& (intent.getAction().equals(Intent.ACTION_TIME_CHANGED)
|| intent.getAction().equals(Intent.ACTION_TIMEZONE_CHANGED)))
{
Intent i = new Intent(context, DialogPopUpTimeChange.class);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(i);
}
}
}
Olası kopyalar [Tarih ve Android'de saat değişikliği dinleyici?] (http://stackoverflow.com/questions/5481386/date-and-time-change- yorumda post it dinleyici-in-android) –
Nope, ben zaten BroadcastReceiver kullanmaya çalıştım ama yardımcı olmadı çünkü bu bir kopya değil. Saat diliminin ne zaman değişeceğini bilmek istiyorum ** –
olacak. Sorunuzda bunu söylemediniz. Neden zaman değiştiğinde uyarınızı güncellemek için BroadcastReceiver kullanamazsınız? –