Banco Japon de Mesa Verde
最近の主な話題-iPhone-FPS-デジタル一眼-PC自作-Mac-PS3-グルメ-ファッション-etc.-
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
[タグ未指定]

人気blogランキング
[iPhone 4] ハイレゾアイコンの適用方法(WinterBoard)
---追記1
 従来どおり「/テーマ名/Icons」フォルダを使用してアイコン置換する場合は、「アプリ名.png」と「アプリ名@2x.png」を両方置いて下さい。どちらもRetina用のハイレゾ画像(要は同じ画像)で構いません。
---追記1終わり

---追記2
関連記事:[iPhone 4] ハイレゾアイコンとマスク/シャドウのまとめ
(今回発覚した不具合への対処法をまとめた記事です)
※App Storeアプリ(とWebクリップ)のアイコンはマスク/シャドウで自動整形できますが、デフォルトアプリとCydiaアプリ(Jailbreakアプリ)のアイコンには適用されないため、下記の方法または従来の方法で個々にアイコンを置換する必要があります。
---追記2終わり

 注:iPhone 4限定です
 iPhone 4では、従来の57x57ピクセルのアイコンに加えて、Retinaディスプレイにネイティブ対応のハイレゾアイコン(114x114ピクセル)が登場しました。
 このHDアイコン(ハイレゾアイコン)をWinterBoardで置換する方法です(要Jailbreak)。

■CFBundleIdentifierの場所
 まずは下記リンクを参照して下さい。
 ハイレゾアイコン置換に必要なアプリ毎の『CFBundleIdentifier』とアイコン名の一覧です。
 このリストは例によって有志により情報補完中、1番目のリンクは誰でも編集可能、2番目のリンクは管理者にTwitter経由でメールアドレスを送ると編集権限が得られます。

 CFBundleIdentifier Locations
 iOS Icon Bundle Identifiers

 要約すると「iPhone 4のハイレゾアイコンをWinterBoardのテーマで適用するには、各アプリ毎の /テーマ名/Bundles/固有のCFBundleIdentifier名 というフォルダに、デフォルトの高解像度用アイコンと同名の画像を置け」ということになります。従来の「Iconsフォルダにアプリ名.pngを置く」とは根本的に違うので注意が必要です。

 アプリ毎って・・・面倒くさいったらありゃしないよ
 (せめて1番目のリンクにあるスクリプトを活用しましょう)

■具体的な手順の例
 アプリ『Gangstar』を例に手順を示します。
  1.Gangstarのインストール先フォルダを開く
   (AppLinks(Cydiaから入手)を使うと便利です)
   (フォルダ /private/var/mobile/AppLinks/Gangstar.app が生成されます)
  2.更にその中にあるGangstar.appフォルダを開く
  3.Info.plistを開く
  4.下記キーの値を調べる
   CFBundleIdentifier
    例:Gangstarの場合:com.gameloft.Gangstar
   CFBundleIconFiles (4つあるうちの上から2つ目、iPhone 4用アイコン)
    例:Gangstarの場合:Icon@2x.png
  5.テーマにこのアプリ用のフォルダを作る
   Bundlesフォルダに手順4で調べたCFBundleIdentifierと同じ名称のフォルダを作る
    例:Gangstarの場合:/テーマ名/Bundles/com.gameloft.Gangstar
  6.このフォルダにハイレゾ用として作成したアイコンを入れる
   このフォルダに手順4で調べたCFBundleIconFilesと同じ名称のアイコンを入れる
    例:Gangstarの場合:Icon@2x.png
    (Iconsフォルダに同アプリのアプリ名.pngを置かないこと、あるとそちらが優先
  7.テーマをiPhone 4に転送する(従来と同じ)
  8.WinterBoardで適用

■適用結果の例

 アイコン作成例(このアイコンをGangstarのハイレゾアイコンとして適用してみます)
試作したアイコン


 オリジナルの状態(テーマ適用なし)
オリジナルアイコン(114x114)
 当然ながらアプリデフォルトのアイコン(114x114)が表示されます

 従来の方法(Iconsフォルダにローレゾアイコンを置く)
従来のローレゾアイコン適用
 解像度が低く縦横2倍スケーリングされるためジャギジャギです

 今回の方法(ハイレゾアイコンを/Bundles/CFBundleIdentifier名フォルダに置く)
前述の方法でHDアイコンを適用
 大成功、と思いきや、おかしいじゃないか
 不具合:デフォルトマスクと同型の背景が表示されてしまいました
 不具合:テーマで適用した丸形アイコンが少し小さくなっている

---追記
 不具合回避方法はコメント欄参照(アイコンを118x120にする&マスクとシャドウを置換)
 その後こちらの記事にまとめました
 [iPhone 4] ハイレゾアイコンとマスク/シャドウのまとめ
---追記終わり


 最後の不具合に関しては調査中です。該当しそうな画像(Shared@2x.artworkやSprinBoard.appにある各種画像)を置換してみましたが効果なし。情報収集します。
 (iPhone 4完全対応のテーマを入手して参考にするのが手っ取り早いかも)

スポンサーサイト

テーマ:iPhone - ジャンル:携帯電話・PHS


人気blogランキング
コメント
この記事へのコメント
いつも参考にさせてもらっております。私も不具合:デフォルトマスクと同型の背景が表示される、不具合:テーマで適用した丸形アイコンが少し小さくなるの2点で困っています。その後何か情報をお持ちでしょうか?
2010/09/26 (Sun) 22:20:29 | URL | jonio #-[ 編集]
iPhone 4アイコンのマスク
jonioさん、こんばんは
一部わかったことがあります

まず背景が表示される件
App Storeアプリは専用のハイレゾアイコンを入れた場合でも
マスク画像の置換が必須なようです
具体的には
テーマ内の /Bundles/com.apple.mobileicons.framework フォルダに
AppIconMask@2x.png (テーマのアイコン形状に合わせるためのマスク画像)
を置きます
通常はこれに加えて
AppIconShadow@2x.png (下のレイヤとして合成される部分、デザイン)
(アイコンを用意しないApp Storeアプリのデザイン統一用)
サイズはどちらもデフォルトと同じ「118x120」です
AppIconOverlay@2x.png は不要なようです
ローレゾ用のAppIconMask.pngとAppIconShadow.pngもiPhone 4で
使う限りは不要と思われます
(テーマによってはハイレゾ用をリネームして同じ画像が入れられていました)

3Gや3GSのときはテーマにマスク等がなくても置換用のアイコンさえ
入れておけば正常に表示されたのに
これがiPhone 4(iOS 4)の仕様なのかWinterBoardの不具合なのかは
わかりません

アイコンが小さくなってしまう件
私が↑このエントリで例として使ったアイコンは140x140です
自動でデフォルトアイコンと同じ114x114に縮小されていました
これも仕様なんでしょうか
どうやら縮小を防ぐにはマスク等と同じ「118x120」でアイコンを
作るしかないみたいです
これまでに私が使ってみたiPhone 4のRetina対応テーマ数種はどれも
118x120で作られていました

もう少し情報がまとまったら記事にしてみようと思います
この他にもiOS 4のホーム画面には数々のシャドウやマスクや
バックグラウンド画像などが存在して、ややこしいですね

WinterBoardがアップデートしたら何か変化が生じる可能性も
ありますし、3GS+OS3までと違って随分面倒になってしまいました
2010/09/27 (Mon) 21:54:07 | URL | bancojapon #mQop/nM.[ 編集]
iPhone 4アイコンのマスク
bancojaponさん

詳しい情報をありがとうございました。
平日は中々時間が取れませんので、休日にでもまたいじってみようと思います。
具体的に背景が表示される件は、テーマ内の /Bundles/com.apple.mobileicons.framework フォルダに
AppIconMask@2x.pngと、AppIconShadow@2x.pngの2つを
共にアイコンサイズ「118x120」で置けば解決ということでよろしいのでしょうか?
2010/09/27 (Mon) 23:21:58 | URL | jonio #-[ 編集]
参考サイト発見
そうですそれでOKです

参考になりそうなスレッドを見つけてきました
http://modmyi.com/forums/iphone-2g-3g-3gs-ipod-touch-1g-2g-3g-new-skins-themes-launches/721183-how-create-auto-skinning-app-store-icons-your-theme.html
主にiOS 3の情報ですが一部iPhone 4のことも記載されています
やっぱりオリジナルと同じ118x120厳守とのこと

私も週末改めて試してみようと思います
2010/09/28 (Tue) 08:54:15 | URL | bancojapon #mQop/nM.[ 編集]
iPhone 4アイコンのマスク
bancojaponさん

こんばんわ。その後
テーマ内の /Bundles/com.apple.mobileicons.framework フォルダに
AppIconMask@2x.pngと、AppIconShadow@2x.pngの2つを
共にアイコンサイズ「118x120」で置いてみたのですが、わたしの環境ではAppIconShadow@2x.pngの透過ファイルを入れるとアイコン自体が全て透明になって消えてしまいます。いまだ解決できません。
2010/10/05 (Tue) 21:17:56 | URL | jonio #-[ 編集]
HDアイコン用マスクとシャドウの作例
少し補足しておきます、及び作例も添付しました

●AppIconMask@2x.png (118x120、png)
白~黒のグラデーション。アイコンマスク用。白(FFFFFF)は完全に透過し元アイコンのグラフィックが見える、黒(000000)は完全にマスクし元アイコンが表示されない部分。
●AppIconShadow@2x.png (118x120、png)
アイコンの装飾デザインとなるグラフィック。透過部分設定可能。AppIconMask@2x.pngでマスクすることにより、下にあるこれが合成されて最終的なアイコンとなる。
(前のコメントで「上のレイヤ」と書いたのは誤りなので訂正しておきます)
●つまり
マスクで黒:元アイコンが隠れるためシャドウが見える
マスクで白:元アイコンが100%見える
マスクでグレー:グレー濃度により黒か白どちらかに寄る(透過してシャドウが見える)

本来オーバーレイが装飾を担うはずなのに効力がありません。WinterBoardのバグなんでしょうか?

★作例(急造なのでクオリティには目をつぶって下さい)
AppIconMask@2x.png
http://blog-imgs-45.fc2.com/e/v/h/evh5150/10100501_AppIconMask@2x.png
AppIconShadow@2x.png
http://blog-imgs-45.fc2.com/e/v/h/evh5150/10100502_AppIconShadow@2x.png
適用結果
http://blog-imgs-45.fc2.com/e/v/h/evh5150/10100503.png

適用結果のうちGangstarだけが専用HDアイコンを自作して適用、他は全て上記マスクとシャドウの適用結果です
若干違いがあります、試行錯誤が必要ですね

まとまったら記事にします
2010/10/06 (Wed) 13:23:13 | URL | bancojapon #mQop/nM.[ 編集]
記事upしました
上記をまとめて記事にしました
http://evh5150.blog36.fc2.com/blog-entry-1034.html
2010/10/06 (Wed) 19:28:47 | URL | bancojapon #mQop/nM.[ 編集]
AppIconMaskについて
いつもこちらの記事、大変参考にさせてもらっています。
直接記事内容とは関係ないかも知れませんが、質問があります。
透過アイコンを使った場合の影の消し方についていろいろと調べ、
System/Library/PrivateFrameworks/MobileIcons.framework内の
AppIconMask-72.png
AppIconMask.png
AppIconMask@2x.png
AppIconOverlay-72.png
AppIconOverlay.png
AppIconOverlay@2x.png
を削除、
AppIconShadow-72.png
AppIconShadow.png
AppIconShadow@2x.png
を透過ファイルに置き換えたところ、上手くいきましたが、今度は透過アイコンでないアプリのアイコンが四角になってしまいます。
散々、既出の現象のようで、仕方なく上記のファイルを元に戻したのですが、四角になったまま戻りません。
どこかにキャッシュされているものと思い、/private/var/mobile/Library/Cachesなどを覗いてみたのですが、ios4のアイコンキャッシュファイルがどれなのかわかりません。ご存知でしょうか?
2010/11/21 (Sun) 09:48:26 | URL | bon #-[ 編集]
AppIconMaskについて
因みに、com.apple.IconsCacheの中身をすべて削除しても変わりませんでした。
2010/11/21 (Sun) 10:05:15 | URL | bon #-[ 編集]
こんばんは
com.apple.IconsCache内部のファイルを消した後はrebootしたでしょうか?
respringよりrebootが確実です

ところで、AppIconMaskを削除するとその時点で角丸マスクが適用されなくなり
App Storeアプリのアイコンは正方形になってしまいます
(因みにAppIconMaskを真っ白な画像にした場合も同様)
(AppIconMaskを真っ黒な画像にすると逆に何も見えなくなる)
最終的に表示させたいアイコンの形状に合わせたマスク形状の画像を
配置しておく必要があります
2010/11/21 (Sun) 18:14:32 | URL | bancojapon #mQop/nM.[ 編集]
返答ありがとうございます。
今もAppIconMask等の所在と中身を確認後(標準で入っているmaskファイルです。)、com.apple.IconsCacheの中身を削除してrebootしましたが、状況は変わりません。
どうやらこれらのファイルは別のところにキャッシュされてるのかもしれませんね。
と言っても私には見当も付きませんが、いろいろやってみるしかなさそうです。ありがとうございました。
2010/11/21 (Sun) 18:55:28 | URL | bon #-[ 編集]
あの後同様の質問を海外フォーラムで見たのですが
http://www.macthemes.net/forum/viewtopic.php?pid=696757#p696757
(やはり正しいマスク等を戻してキャッシュクリアやリブートを繰り返しても改善しないらしい)
解決には至っていないようです

他の形でキャッシュを構成し直すとしたら
一旦別のマスク・シャドウ画像で置換してリブートし、もし反映されたら
再びオリジナル画像に戻してリブートするなど
WinterBoardを使う場合は、オリジナル画像はシステムに配置したまま
異なるマスク・シャドウを持つテーマ複数間の切り替えやON/OFFを
繰り返してマスクが変わるか(そして元に戻るか)確認してみる
といったところでしょうか
何とか直ればよいのですが
2010/11/22 (Mon) 05:21:15 | URL | bancojapon #mQop/nM.[ 編集]
こんばんは。
わざわざ調べて頂いて、大変恐縮です。
英語が苦手なもので、日本語のサイトばかり調べていました。
とにかくマスク・シャドウを入れ替えながら、元に戻るのを期待するしかないようですね。
それが解っただけでも、とても有難いです。
今日はこれから出掛けないといけないので出来ませんが、明日いろいろやってみます。
よい結果が出れば、また報告いたします。
本当に有難う御座いました。
2010/11/22 (Mon) 20:48:01 | URL | bon #-[ 編集]
コメントを投稿する
URL:
Comment:
Pass:
秘密: 管理者にだけ表示を許可する
 
トラックバック
この記事のトラックバックURL
この記事へのトラックバック
copyright © 2005-2011 Banco Japon de Mesa Verde all rights reserved.
Powered by FC2ブログ.
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。