- ニュース

写真:Graham Bower/Cult of Mac
今週、副業として開発しているiPhoneボディビルディングアプリ「Reps & Sets」に、ついにダークモード対応を追加することができました。Appleが世界開発者会議(WWDC)でこの機能を初めて発表してから、ほぼ1年が経ちました。
なぜこんなに時間がかかったのでしょう?ダークモードのサポートは見た目ほど簡単ではありません。苦労しているのは私のようなインディー開発者だけではありません。WhatsAppはつい最近ダークモードのサポートを追加したばかりで、Facebookはまだベータテスト中です。
お気に入りのアプリがダークサイドに切り替わるのを待っているのであれば、なぜ時間がかかるのか、その理由を説明します。
ダークモード:照明を消すだけではない
開発者として、Xcode でダークモードを初めて有効にしたとき、見た目はあまり良くありません。(下のスクリーンショットを参照してください。) アプリは、明るい要素と暗い要素の奇妙で不自然な組み合わせでつなぎ合わされた、フランケンシュタインの怪物のように見えます。
問題は、ユーザーインターフェースの一部、例えば背景などは自動的に暗く切り替わるのに対し、他の部分は切り替わらないことです。黒地に黒文字のため、一部のテキストは読めなくなってしまいます。白い背景のヘッダーは明るすぎて目障りに見えます。明るい背景用にデザインされたイラストやアイコンは見栄えが悪くなります。
確かに、もしアプリがAppleのデフォルトのボタンとスタイルを使って作られていたら、それほど悪くはなかったかもしれません。しかし現実はそう単純ではありません。最近では、Appleの標準アプリでさえ、デフォルトのユーザーインターフェース要素から逸脱していることがよくあります。
ダークモードでアプリが見栄えが悪くなるのを初めて見た時、本当にがっかりしました。Reps & Setsは大きく複雑なアプリで、様々なビュー(開発者用語で画面デザインの違いを表す)が多数存在します。全てを更新するには膨大な作業量が必要になることは分かっていました。全ての要素が美しく見えるよう、全てのビューで綿密なデザイン検討が必要でした。
私のアプリがまだ若くないという事実が、事態をさらに複雑にしていました。元々は9年前にiOS 6向けに開発されました。それ以来多くの変更が加えられ、今ではレガシーコード(開発者が不要なコードを指す婉曲表現)が大量に存在しています。その結果、コードに触れるたびに、結局はアップデートが必要になるのです。

写真:Graham Bower/Cult of Mac
ダークモードは資産を負債に変える
ダークモード対応を追加しようとすると、ビューの更新は問題の始まりに過ぎません。ほとんどのアプリには、アイコン、ロゴ、イラストといったアセットも含まれており、これらも変更が必要になります。
Appleは、ダークモードでアセットに異なる色合いを適用できるようにすることで、この問題に対応しています。シンプルでフラットなアイコンにはこのアプローチが有効ですが、アニメーションや多色グラフィックには適していません。
アプリによっては、アセットの多さに驚かれるかもしれません。例えばReps & Setsでは、100個以上のアイコンと300枚以上のイラストを修正する必要がありました。この作業だけでも、40時間もの作業時間を要しました。
ライトモードを忘れないでください
さらに複雑なのは、ダークモードをサポートするために行ったすべての変更がライトモードでも機能する必要があることです。つまり、1つではなく2つのユーザーインターフェースを設計することになります。
ダークモードの実装が完了した後も、作業はそこで終わりません。継続的な取り組みです。今後はアップデートをリリースするたびに、ライトモードだけでなくダークモードでもテストする必要があります。これは非常に時間のかかる作業です。以前、Reps & SetsをOSとハードウェアの組み合わせで8つテストしましたが、ダークモードの実装により、その倍の16バージョンになります。
ダークモードはブランドイメージに合わないかもしれない
ダーク モードの実装を開始する前に、ブランド アイデンティティというより根本的な問題を考慮する必要があります。
Facebookのような有名ブランドは、その信頼性を維持するために綿密な管理を必要とする貴重な資産です。ブランドアイデンティティはすべてのプラットフォームで一貫性を保ち、常にすぐに認識できるようにする必要があります。しかし、ダークモードはこれを複雑にします。すべてのロゴやカラースキームが黒に似合うわけではありません。この点に対処するために、ブランドガイドラインの見直しが必要になるかもしれません。
私の古いアプリでさえ、少し考えなければなりませんでした。例えば、「Reps & Sets」のブランドカラーは濃い青です。白い背景では見栄えが良いのですが、黒い背景では読みにくいです。そこで、ダークモード用にブランドカラーパレットに薄い青を追加する必要がありました。
私にとっては、ワンマンバンドなので、変更は簡単です。しかし、Facebookのような多くのステークホルダーが関与する大企業にとって、ブランドガイドラインの変更は通常、複雑で時間のかかるプロセスです。アプリ自体にとどまらず、ウェブサイトのデザインや看板、展示ブースの外観など、広範囲に影響を及ぼす可能性があります。
多くの大企業がダーク モードを完全に無視することに決めたのも不思議ではありません。

写真:Graham Bower/Cult of Mac
ダークサイドの方が魅力的だと思っていた
Reps & Setsはフリーミアムアプリです。基本ダウンロードは無料で、アプリ内課金でプレミアムサブスクリプションに加入すると、追加機能をご利用いただけます。ただし、ダークモードのサポートをプレミアムユーザーのみに限定することはできません。そのため、すべてのユーザーが無料でこのすべての機能の恩恵を受けることができます。
純粋に商業的な観点から言えば、ダークモードを導入する動機は全くありませんでした。しかし、私はお金のためだけにやっているわけではありません。もしそうなら、何年も前に諦めていたでしょう。ダークモードを選んだのは、クールだと思ったし、見た目も良くなると確信していたからです。それに、私自身もこのアプリを使っていて、ダークモードも使っています。Reps & Setsを起動するたびにライトを浴びせられるのは、正直言って不快でした。
だからこそ、私は夜も週末も果てしなく働き、何百ものアセットを描き直すことにしたのです。お金のためではなく、愛のためにやったのです。そして、愛は巨大企業には理解しがたい通貨です。結局のところ、私が想像もできないほどのリソースを持つ大企業が、ダークモードのサポートに私よりもさらに時間がかかっているのは、まさにこのためだと思います。