2015-04-20 9 views
6

Przed iOS 8 planowanie tygodniowych powtarzających się powiadomień było łatwe, dlatego właśnie przypisaliśmy wartość NSWeekCalendarUnit do wartości notification.repeatInterval. Teraz z iOS 8 prawie wszystkie wartości NSCalendarUnit zostały wycofane i zastąpione, głównie dlatego, że Apple może zmienić ich nazwę z NSDayCalendarUnit na NSCalendarUnitDay dla spójności. Jednak zmienili NSWeekCalendarUnit na NSCalendarUnitWeekOfMonth i NSCalendarUnitWeekOfYear, bez wyraźnego wyjaśnienia, na czym polega różnica, a dokumentacja UILocalNotification nadal mówi w kategoriach wycofanych wartości.Jak skonfigurować cotygodniowe powtarzanie UILocalNotifications z wycofaniem systemu iOS 8?

chcę UILocalNotification do powtarzać co 7 dni. Zakładam, że NSCalendarUnitWeekOfMonth była prawidłową wartością, ale kiedy go używam, nie otrzymuję powtórzeń. Testowanie jest czasochłonne, ponieważ każdy test trwa tydzień!

Czy ktoś wie, który z nowych kalendarzy tygodniowych powinien być używany do powtarzania tygodniowego powiadomień lokalnych, czy też mimo użycia ostrzeżeń należy używać przestarzałych wartości?

Odpowiedz

7

Zakładając kalendarzu gregoriańskim wydaje NSCalendarUnitWeekOfYear jest wartość albo z 1 - 53 lub 0 - 52 która reprezentuje liczbę tydzień ciągu roku kalendarzowego. NSCalendarUnitWeekOfMonth jest 1 - 5 lub 0 - 4 co oznacza tydzień w ciągu miesiąca (nieudokumentowane, to są osobiste opinie). Z mojego doświadczenia wynika, że ​​działa NSCalendarUnitWeekOfYear.

+2

Dzięki za cynk. Doszedłem do wniosku, że sposobem szybkiego przetestowania ich jest szybkie powiadomienie o konieczności powtórnego wystrzelenia, a następnie sprawdzenie daty następnego pożaru po jego uruchomieniu (co jest wyświetlane z powiadomieniem po). Zarówno NSWeekCalendarUnit, jak i NSCalendarUnitWeekOfYear pracują nad tworzeniem powiadomień powtarzających się co 7 dni, więc NSCalendarUnitWeekOfYear jest najlepszy w użyciu, ponieważ nie jest przestarzałe. – Siegfoult

Powiązane problemy