読者です 読者をやめる 読者になる 読者になる

Titanium MobileでPNG最適化をスキップする

iPhone開発をしているときにxcodeでビルドすると、アプリケーションにパッケージされるpng画象が独自フォーマットに変換される処理が入るらしい。
https://discussions.apple.com/thread/1751896?start=0&tstart=0


ここで紹介されている方法でxcodeに設定するとこのpng変換処理がスキップされるみたいです。
http://d.hatena.ne.jp/Seasons/20100330/1269922563



しかしTitanium Mobileで同じようにテンプレートプロジェクト(/Library/Application\ Support/Titanium/mobilesdk/osx/1.7.1/iphone/iphone/Titanium.xcodeproj)をxcodeで開いて同じ設定をしてもどうしてもoptimize pngが走ってる。。。


Titanium SDKのソースを見たところxcodeでビルド時ではなく、コマンドラインで直接最適化処理をいるのを発見しました。
(/Library/Application Support/Titanium/mobilesdk/osx/1.7.1/iphone/compiler.py:314あたりの処理)

どうやらiPhoneSDKにそういうコマンドが用意されているみたいですね。

cd /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/
./iphoneos-optimize
usage: iphoneos-optimize path [-skip-PNGs]


とりあえずcompiler.pyのiphoneos-optimizeコマンド実行の処理を

run.run(["%s/Platforms/iPhoneOS.platform/Developer/usr/bin/iphoneos-optimize"%dev_path,app_dir, "-skip-PNGs"],False)

として-skip-PNGsパラメータを付けてあげたらpng変換処理はスキップされました。