Обновить
2
Отправить сообщение

Если deinit у классов LeakWatcher и property wrapper не будет вызван из-за утечки, вы точно также об этом никогда не узнаете)

Да ничего особенного. Можно просто добавить, например,

    deinit {

        debugPrint("👍 deinit \(self)")

    }

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

В тот же момент, когда вы ожидаете вызов метода deinit в вашем примере у классов LeakWatcher и property wrapper.

Всё правильно, таким образом вы и узнаете, что есть утечка, потому что deinit не был вызван.

Вы могли просто добавить deinit с проверкой в класс LeakingViewModel и таким образом контролировать удаление объекта из памяти.

Не хватает кода структур OnboardingHighlightElement и OnboardingHighlightElementKey для полноты картины)

В help написано, что ТОН дается за 1024 баллов, а в game over, что за 2024)

p.s.
Кстати, почему help на английском, где итальянский?))

За "ЕкатерЕнбург" обидно было)

Блин, да вы трудяга! Уверен, у вас всё получится. Уже получается.

Данные некорректно хранились: в приложении показывались одни, а в виджете - другие, т.е. не было синхронизации между ними, хотя по идее UserDefaults один на всю группу. Почему-то именно после обновления устройства и его перезагрузки. Решил через базу данных, фактически расшарил кастомный файл с данными, и всё работает.

У меня есть Chess Widget App: была проблема с тем, что UserDefaults глючит при обмене данными между виджетом и приложением, например, после обновления устройства. В результате перешел на sqlite.

В копилку xCode и IOS добавился Swift UI.

У меня есть несколько пет проектов в App Store и Google Play. Денег не приносят, а некоторые вообще бесплатные. Действительно, без раскрутки, это игра в долгую. С другой стороны, на этих проектах я пробую новые технологии, которые на работе попробовать не получится. Но вообще, приятно постепенно развивать продукт, растить базу пользователей и собирать положительный фидбек) При этом я пишу не в стол, а сам каждый день пользуюсь своими приложениями, т. е. они приносят мне пользу.

Интересно, шахматное приложение Lite lichess app на таком запустится? ? Как раз писал его для старых девайсов, на которых нативный lichess уже не работает.

Мой виджет ;)

В iOS 17 добавили интерактивность для виджетов, можно попробовать в Xcode 15 beta.

Спасибо за столь подробное изложение, в некоторые компании сам когда-то проходил собесы, очень похожее впечатление от них) Будет интересно почитать, как всё сложится в ОАЭ.

В private extension можно не писать private func, она уже private.

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность