Чому програми так довго додають темний режим

На цьому тижні я нарешті зміг додати підтримку темного режиму Повторення та набори, додаток для бодібілдингу iPhone, який я розробляю як бічну суєту. Це майже рік після Apple вперше оголосила про цю функцію на своїй Всесвітній конференції розробників.

Що у мене так довго? Підтримка темного режиму не така проста, як здається. З цим боролися не тільки інді -розробники, такі як я. WhatsApp лише нещодавно додана підтримка темного режиму, а Facebook є все ще бета-тестування.

Тож якщо ви чекаєте, коли улюблений додаток перейде на темну сторону, ось чому це може зайняти так багато часу.

Темний режим: це не так просто, як вимкнути світло

Як розробник, коли ви вперше вмикаєте темний режим у Xcode, це виглядає не дуже красиво. (Див. Скріншоти нижче.) Ваш додаток виглядає як монстр Франкенштейна, виправлений разом із дивною та жахливою комбінацією світлих та темних елементів.

Проблема в тому, що хоча деякі частини вашого інтерфейсу користувача - наприклад, фон - автоматично перемикаються на темні, інші - ні. Деякий текст стає нечитабельним, оскільки він чорний на чорному. Заголовки з білим фоном виглядають занадто яскравими і дратівливими. Ілюстрації та значки, призначені для світлого фону, виглядають жахливо.

Так, якби додаток було створено за допомогою стандартних кнопок та стилів Apple, можливо, це не виглядало б так погано. Але насправді життя ніколи не буває таким простим. Навіть вбудовані програми Apple сьогодні часто відхиляються від елементів інтерфейсу користувача за замовчуванням.

Коли я вперше побачив, як виглядає безлад у моєму додатку в темному режимі, моє серце стислось. Reps & Sets - це великий і складний додаток з безліччю різних поглядів (жаргон розробника для різних дизайнів екранів). Я знав, що оновлення всіх із них займе величезний обсяг роботи. Кожен вид вимагатиме ретельного розгляду дизайну, щоб переконатися, що всі елементи виглядають добре.

Це ще більше ускладнилося тим, що мій додаток - не весняна курка. Спочатку він був розроблений дев’ять років тому для iOS 6. З тих пір багато що змінилося, тому зараз є багато застарілого коду (евфемізм розробника щодо сировини). В результаті, щоразу, коли ви торкаєтесь коду, вам зазвичай доводиться оновлювати його.

Коли ви вперше вмикаєте темний режим, це виглядає не дуже красиво.
Коли ви вперше вмикаєте темний режим, він виглядає не дуже красиво.
Фото: Graham Bower/Cult of Mac

Темний режим перетворює активи в пасиви

Оновлення представлень - це лише початок проблем, коли ви намагаєтесь додати підтримку темного режиму. Більшість програм також містять ресурси, такі як значки, логотипи та ілюстрації, які потребують змін.

Apple допомагає в цьому, дозволяючи вам нанести інший колір відтінку до ваших активів у темному режимі. Для простих плоских іконок цей підхід добре працює. Але це не допомагає з анімацією або різнокольоровою графікою.

Ви можете бути здивовані тим, скільки ресурсів мають деякі програми. У «Повтореннях і наборах», наприклад, мені довелося змінити більше 100 іконок та 300 ілюстрацій. Лише це завдання зайняло у мене 40 годин наполегливої ​​роботи.

Не забувайте про світловий режим

Подальшим ускладненням є те, що кожна зміна, яку ви робите для підтримки темного режиму, також має працювати у світлому режимі. Тож тепер ви розробляєте два інтерфейси користувача замість одного.

Навіть після того, як ви завершите впровадження темного режиму, робота не зупиняється на досягнутому. Це постійне зобов’язання. Відтепер щоразу, коли ви випускаєте оновлення, вам потрібно буде протестувати його як у темному, так і у світлому режимі. І це трудомістка робота. Раніше я тестував Reps & Sets у восьми різних комбінаціях ОС та обладнання. Темний режим подвоює це до 16 версій.

Можливо, темний режим не належить бренду

Перш ніж розпочати впровадження темного режиму, слід розглянути більш фундаментальну проблему: ідентичність бренду.

Такий відомий бренд, як Facebook, є безцінним активом, який вимагає ретельного управління для збереження своєї цілісності. Ідентичність його бренду повинна бути послідовною на всіх платформах, тому його завжди можна впізнати. Темний режим ускладнює це. Не всі логотипи та колірні схеми добре виглядають на чорному. Для вирішення цього питання може знадобитися перегляд керівних принципів бренду.

Навіть для мого старого додатка це вимагало деякої роздумів. Наприклад, колір торгової марки Reps & Sets - темно -синій. Він чудово працює на білому тлі, але не читається на чорному. Тож мені довелося додати світло -блакитний колір до палітри кольорів мого бренду для темного режиму.

Для мене це нескладна зміна, тому що я-одноосібна група. Але для такої великої компанії, як Facebook, із залученням багатьох зацікавлених сторін, зміна керівних принципів бренду, як правило, є складним, тривалим процесом. Це може мати наслідки, які виходять за межі самого додатка - наприклад, дизайн веб -сайту або вигляд вивісок та виставкових стендів.

Не дивно, що багато великих організацій просто вирішили взагалі ігнорувати темний режим.

Завершена підтримка темного режиму у всій красі.
Завершена підтримка темного режиму у всій красі.
Фото: Graham Bower/Cult of Mac

Я думав, що темна сторона має бути більш спокусливою

Reps & Sets - це безкоштовний додаток. Базове завантаження безкоштовне, а потім є опція покупки в додатку для передплати за доступ до додаткових функцій. Але обмежити підтримку темного режиму лише преміальними користувачами неможливо. Тож усі користувачі отримують переваги всієї цієї роботи безкоштовно.

З чисто комерційної точки зору, у мене не було стимулу впроваджувати темний режим. Але я не просто за гроші. Якби я був, я б кинув багато років тому. Причина, чому я вирішив це зробити, полягала в тому, що я думав, що це круто, і знав, що це буде виглядати добре. Крім того, я сам користуюся програмою та темним режимом. Було жахливо продовжувати запускати Reps & Sets і бути обстріляним світлом.

Ось чому я вирішив працювати нескінченними вечорами та вихідними, переробляючи сотні активів. Я зробив це заради кохання, а не заради грошей. І кохання-це не валюта, добре зрозуміла великим мегакорпусам. Зрештою, я думаю, що тому великим компаніям з набагато більшими ресурсами, ніж я міг собі мріяти, потрібно більше часу на підтримку темного режиму, ніж я.

Остання публікація в блозі

| Культ Mac
September 10, 2021

Покращений додаток TinType створює старовинні відчуття селфіДодаток TinType використовує технологію TrueDepth для більш достовірної невеликої глиби...

Новини Apple, аналіз та думки, а також загальні технічні новини
September 10, 2021

Пояснюються номери F-Stop камери [Відео]Ви коли-небудь замислювалися, чому ƒ-зупинки мають цифри, які вони роблять, або що ці цифри означають? Поди...

| Культ Mac
September 10, 2021

Сьогодні, через три місяці після першого попереднього перегляду на WWDC, iOS 6 була випущена для публіки і тепер доступна для завантаження через iT...