как запустить загрузку в определенную дату

В моем приложении для iPhone я хочу запускать загрузку каждый понедельник недели, каждый 10-й рабочий день месяца, каждый 3-й день месяца и т. Д. Я провел некоторые исследования и разработки и обнаружил, что классы NSDate, NSDateComponents и NSCalendar должны быть используется для этого сценария. Может ли кто-нибудь помочь так же, как я новичок в использовании даты и времени.

Также к тому времени, когда срабатывает триггер, если приложение не в рабочем состоянии или мобильный телефон выключен .. Как справиться с этими сценариями.


person Srivathsa    schedule 25.01.2013    source источник


Ответы (3)


Если ваше устройство выключено / вышло из строя / приложение не работает, вы ничего не можете сделать.

Apple не позволит вам запускать ваш автоматически, поэтому вопрос загрузки и сохранения немного далек.

Что вы можете сделать, так это то, что всякий раз, когда ваше приложение запускается, вы можете прочитать из plist или userdefaults о времени (3-й день месяца) и сравнить с последней сохраненной датой, если она находится в одном месяце, то самое время загрузить и показать всплывающее окно для этого.

person Anoop Vaidya    schedule 25.01.2013
comment
Привет всем, Спасибо за множество возможных решений. Я вижу, что предложенный AKV может сработать в моем сценарии. Я вижу, что функция NSLocalNotification также может помочь мне в этом подходе. Мне еще предстоит разработать какой-либо POC для следовой цели. Мне нужно принять оба ответа Ивана Алека и AKV, так как оба могут потребоваться для решения головоломки. Такого варианта нет, поэтому я принимаю решение AKV. Я опубликую, как только закончу с каким-нибудь тестовым приложением для этого. Это мне очень помогло. Всем большое спасибо. - person Srivathsa; 28.01.2013
comment
Привет, я пытаюсь прочитать данные из pList. все идет гладко, но не могли бы вы сказать мне, как сохранить изменения в том же pList. Я искал это в Google и узнал, что мы не можем писать в pList, который находится в Bundle. Любая помощь или образец кода для сохранения списка приветствуются. - person Srivathsa; 30.01.2013

Единственный законный способ сделать это - запланировать NSLocalNotification на желаемую дату. Когда уведомление запускается и пользователь нажимает на него, приложение запускается, и вы должны начать загрузку.

person Ivan Alek    schedule 25.01.2013

Документация для локальных уведомлений: Local Notifications < / а>

Вы можете прочитать это: Синхронизированная фоновая обработка iOS

Также можно просмотреть это руководство. Я тоже читаю. Что-то новое и для меня. Лучше всего NSLocalNotifications. Взгляните на это: Приложение для напоминаний

person lakesh    schedule 25.01.2013