feb19.jp

Nobuhiro Takahashi
Designer / Engineer

Mac OS X ネイティブアプリを作って Mac App Store でリリースした話

Mac OS X ネイティブアプリを作って Mac App Store でリリースした話

iOS より簡単には始められるけど、Mac App Store でリリースするなら結局 Developer Program に登録しないといけないし、各アプリの ID は登録しておかないといけないので、結局殆ど手間はかわりませんでした。

案外苦労して二つアプリ作るのに 3 日ぐらいかかってしまいました。

それぞれお仕事で必要だったので作りました。こうやって便利ツール作るのは何かとちょっと楽しいなと思ったので、これからも暇になったら作っていこうかなと思っています。


1. Folder Subdivide

Folder Subdivide

一つ目のアプリはフォルダをドラッグアンドドロップすると、フォルダの中のファイルが指定数毎に小分けされてサブフォルダに格納してくれる、「フォルダを小分けする」アプリです。

・大量のファイルをある程度の数毎にアーカイブ化したい
・ファイルチェックで、ここからここまでは A君、
 ここからここまでは B さん、といった作業の割り振りをしたい

という超ニッチなアプリですが、色んな業種の方にお使いいただける気がします。

Folder Subdivide

操作はシンプルで、画面のスライダーを動かして数を指定して、ファイルだらけのフォルダをドラッグアンドドロップするだけです。

Folder Subdivide


余談

これは 1 日ぐらいで作れました。
NSImage も UIImage となんら変わらず、座標系の基準点だけは変わりますが、ローカライズの方法も Xcode の iOS と一緒。Storyboard も一緒です。(Storyboard 使うほどアプリにストーリーは無いけど。。。)


2. Image Bind

Image Bind

二つ目のアプリは、複数の画像ファイルをドラッグアンドドロップすると、それらを一つの画像にいた CSS スプライトの画像と CSS を自動で出力してくれる、「CSS スプライト化」アプリです。

CSS スプライトは高速に表示されるウェブサイトを作るときに、レスポンス数を減らすという意味で、凄く重要です。

オプション機能で、そのスプライトをマスク用の画像として出力したり、画像サイズを半分に縮小したスプライトも同時に出力して、元の画像には @2x のサフィックスを付けさせる事も出来るので、分かる人にはより分かる、なかなか便利なツールだと思います。

Image Bind

バージョンアップして、CSS だけではなく、別の環境用のスプライト生成や、細かい機能を強化する予定ですので、お値段つけてみました(バージョンアップはずっと無料の予定です)。よかったら買ってみてください。

Folder Subdivide


余談

これがだいたい 2 日かかりました。
Cocoa touch では Core Image をサボっていたせいで、画像処理で少し苦労しました。
それに、やっぱり簡単に使えるアプリでありたいので、操作系を最初シーンで分けていたのですが、省略して慣れた人はもっとさくっと作れるようにしよう、ということで、得意の優柔不断が発生してしまいました。プロトタイピングが適当だった弊害です。


Mac App Store の審査とリジェクト

Image Bind の方は一度だけリジェクトされました。でも今やリジェクトされて修正して再度アップロードしたら一日二日で再審査をしてくれるんですね。これは Windows App Hub と比べるとやっぱり経験の差なんだろうな、って思いました。

で、リジェクト理由的には、Mac App Store で配布されるアプリが作成するファイルは、以下の場所に格納されなければならない、という規約のせいです。

* テンポラリフォルダ
* /Documents /Pictures /Music などのフォルダ
* 保存パネルを出してユーザーに選択させたフォルダ

ドラッグアンドドロップさせてそれに関連するファイルだけは出来ても良かったっぽいけど、同時に作る「マスク」の扱いは保存パネルを出して保存させないといけなかったみたい。

なので、Image Bind は、アプリに画像をドラッグアンドドロップしたら保存パネルが出現して、保存先を選んで CSS スプライトを出力するという操作方法になっています。

詳しくは Apple の解説ページから。

さらに余談

実はこのアプリは AIR で作って使っていた自分用アプリを Cocoa に移植したものです。
その自分用 AIR アプリが何十個かあるのでそれを順次 Cocoa 化して Mac App Store に乗せていってみようかな、という算段です(なのでウェブ制作系、ファイル、テキスト操作系が多いですが...)。

AIR は数時間、ノってるときは数十分とかでアプリがつくれちゃうので、パフォーマンス気にせず、プロトタイピングや速攻で作りたいときには最高の環境だなと思っています。


Tweet Share Bookmark

Navigation

prev: Flash CS6 がデフォルトでは Flash Player 10&10.1 / 10.2 のプロファイルが入っていないので入れる
next: Mac OS X 10.7 Lion に Python モジュールの LXML を入れる

Recently Entries