172 похожих чатов

Ребят, у меня есть таймер на 2 дня, в течение

2 дня действует 40% скидка, когда таймер искает, то появляется новый таймер на 2 дня со скидкой 60%. Я этот таймер реализовал через клиента, тоесть, клиент может поменять в настройках дату, допустим поставит 7 сентября, и у него сразу будет 60%(это баг), как можно обойти это?

3 ответов

13 просмотров

ну прям сходу (глупо но как вариант) сходи в гугл спроси: «какой сегодня день»

Aidar- Автор вопроса

я прошу варианты для решения этого бага

Aidar
я прошу варианты для решения этого бага

Как уже написали, вернее способа, нежели через интернет, скажем через NTP удостовериться в пройденном промежутке времени нет, но можно что-то придумать с оговорками: - Wall time(NSDate like) у нас зависят от текущих настроек и не подходят; - Monotonic time собственно монотонно увеличивают некий счётчик и не зависят от настроек, но не все из них могут делать это во время сна, а айфон любит поспать. Из монотонных у нас есть: - mach_absolute_time/CACurrentMediaTime/ProcessInfo.processInfo.systemUptime не подходят, ибо они не считают во время сна; - kern.boottime дают отсчёт от загрузки и считают во время сна, нам частично подходят, но они к сожалению выдают значение отностильно текущих настроек; Но их всего этого добра есть clock_gettime c флагом CLOCK_MONOTONIC, которые умеют считать во сне, как и kern.boottime, но при этом независят от текущих настроек. Единственный минус clock_gettime это то, что отсчёт сбросится после перезагрузки устройства. То есть вариант, когда юзер выключил устройство и прождал не отсчитываются. Но с этим наверное можно смириться. Осталось узнать факт перезагрузки устройства. Это можно сделать через семафор sem_open c флагом O_EXCL который живёт ровно до перезагрузки. Итого имеем: clock_gettime + CLOCK_MONOTONIC sem_open + O_EXCL Большая часть из этого системный уровень, нужно ли оно тебе я хз )

Похожие вопросы

Обсуждают сегодня

Ну вот просто даже давайте вот как. Какой нибудь конкретный кейс, можете в пример привести, где бч работает и приносит прикладную пользу, а не просто что бы было? Не крипту.
Alexander Andreev
22
Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
> Копаем глубже > Следующий момент был, когда я спросил его, знает ли он JavaScript. Он ответил, что его учили работать с C#. Я тоже в университете писал на C#, но даже там мн...
Oleg Volkov
4
лучше скажите, причём тут паскаль?
Alexey Kulakov
36
Мне вот любопытно. Уже сколько времени имею соблазн купить макбук, ибо подозреваю что очень уж удобен будет в связке с другой техникой от эпл которая у меня есть, да и сам по ...
Not Yeromin
9
И никого не интересует какие пакеты кто использует. ((% Заходишь на сайт симфони и видишь поддержку Украины - по законам РФ это ж экстремизм. Только никто не отказывается от с...
Am Ambrion
11
Чтобы перехватить все нажимания буков на форме, надо хук ставить? Пробовал на форме ОнКейДаун, оно ловит клаву если фокус не на компоненте с вводом текста
Serjone
15
Но, может, есть уже проверенная? Наши требования такие: 1. Сообщения должны приходить из Инста в CRM оду 2. Должна быть возможность подключить несколько экаунтов Инстаграм. Р...
Alexander Sharoiko MSE / Александр Шаройко
7
Народ! Впервые клиенту пришло письмо от РКН, у вас, дескать, есть яндекс метрика, а нигде не написано, что вы ее юзаете. Никто не сталкивался?
Sasha Beep
14
Всем привет! вывожу на общей стр дочерние ресурсыв каждом ресурсе галерея, и первая фотка должна выводиться на общей [!DocLister? &prepare=photo !]
Alekso
12
Карта сайта