Help us understand the problem. What is going on with this article?

アプリのアイコンを自動生成する

More than 5 years have passed since last update.

アイコンをプログラムによって生成して、デフォルトの真っ白なアイコンと差し替えた話です。

問題意識

開発中のiOSアプリはデフォルトで真っ白な(iOS7から幾何学模様)アイコンですが、開発中のアプリをいくつかインストールすると、ホーム画面に真っ白なアイコンがズラズラと並びます。iOSアプリを開発したことのある方であれば、見慣れた光景かと思います。こういう画面だと、一目でどのアイコンがどのアプリか判断つかないし、なによりiOSらしからぬダサいホーム画面になってしまいます。

一目でどれがどのアプリか分かって、かつ開発中のアプリで覆い尽くされてもホーム画面が華やかに見える状態を目指して、今回のソリューションを考案しました。

picon

以上のような問題を解決するため、piconというrubygemを作りました。Xcode 5.0以降が必須です。使い方は簡単で以下のとおりです。

$ gem install picon
$ cd path/to/project
$ picon generate

これでこんな感じになります。

Before

picon_before_s.png

After

picon_after_s.png

piconはアプリのbundle identifier(com.example.SampleApp的なアレ)のハッシュ値に基づいたidenticonを生成し、デフォルトのアイコンと差し替えます。bundle identifierに基づいているので、アプリ毎にユニークなアイコンが生成されます。もちろんiPadやiOS 7など各解像度に合わせて生成して差し替えてくれます。実装の中身としては、Xcode 5.0から追加されたAsset Catalogという機能を使っています。新しいAsset Catalogを作成し、そこに生成したidenticonを追加して、最後にデフォルトのアイコンのAsset Catalogと入れ替えています。ちょっと強引なやり方をしていますが。


デフォルトのアイコンに見飽きたという方は、ぜひお使いください。また、まだまだ完成度は高くないのでpull reqやissueもお待ちしております。

repro
世界59か国6,500以上の導入実績を持つCE(カスタマーエンゲージメント)プラットフォーム「Repro(リプロ)」を提供
https://repro.io/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away