Sparkle、物凄く便利なのですが、1回組み込むとフレームワークのバージョンを上げるだけの作業になるので、新しいアプリケーションを作った時に導入方法を忘れてしまったりします。
今回は自作ソフトで、ソフトウェアの自動アップデートを可能にするフレームワーク、Sparkleの導入の仕方を忘備録がわりに。
まず、 http://sparkle.andymatuschak.org/ の "Get Sparkle 1.5 b6" をダウンロードします。(現時点では1.5 b6ですが、新しいバージョンをダウンロードします)
ダウンロードしたZipファイルを解凍すると、ドキュメントなどが入っていると思います。
軽くドキュメントに目を通しておきます。
この中で、必要なのは、"Extras" と "Sparkle.framework" です。
"Sparkle.framework" をプロジェクトのディレクトリの中にコピーします。(Frameworkフォルダを作ったり)

続いて、Framework フォルダに追加した Sparkle.framework を Xcode のプロジェクトに追加します。

ターゲットのアプリ名を右クリックして、「追加」「新規ビルドフェーズ」「新規コピーファイル」選択します。

情報ウインドウの、デスティネーションをフレームワークにして閉じます。
「ファイルをコピー」が出来たら、Linked Framework から Sparkle.framework をドラッグアンドドロップして追加します。

ここまで出来たら、次は Window などが有る xib(nib) を開きます。
Library から Object を 追加して Class を SUUpdater にします。

Windowへボタンを配置し、先ほど作った Updater(Object) へ Action を繋げIBは閉じます。

次はXcodeを離れてFinderで作業します。
ダウンロードして解凍したフォルダの Extras→Signing Tools を開きます。
Terminal.appを起動して、ruby と入力し、スペースを入力した後、
Signing Toolsフォルダの中にある、"generate_keys.rb" をTerminal.appへドラッグアンドドロップしてreturnキーを押します。
If you lose it, your users will be unable to upgrade! が表示され、プロンプトが表示されたら、ホームディレクトリに移動し、"dsa_priv.pem" と "dsa_pub.pem" が出来ている事を確認します。
(この二つは無くすと後々厄介ですので、 忘れないように保存しておきます。)
続いて、" dsa_pub.pem" を プロジェクトのディレクトリのResourcesフォルダへコピーし、Xcode の Resources にも追加します。

追加出来たら、Info.plist へ必要な情報を追加します。
追加する内容は、Keyが「SUPublicDSAKeyFile」 Valueが「dsa_pub.pem」と Key が 「SUFeedURL」Valueが「 web上へ置くxmlのアドレス」です。
InfoPlist.strings を開き、SUFeedURL = "web上へ置くxmlのアドレス"; を追加します。
(例:SUFeedURL = "http://www.hoge.jp/AppName/Updates/en/AppName.xml";
これでアプリケーション側は終わりです。後は xml と表示する html を作成し、Webへアップロードして終わりです。
最後に、アプリケーションのアップデートの際は "dsaSignature" を新しくする必要があります。
ビルド後にZip圧縮したら、ターミナルで
ruby[S]Extras/Signing Tools/sign_update.rb[S]zipのPath[S]保存している dsa_priv.pem
で dsaSignature を作成しWeb上のxmlを変更します。
※[S]はスペース
Xcodeのバージョンが上がったり、Sparkleで大きな変更が有った場合は、記述通りにいかないかもしれませんので、ご注意を。
また、今回の組み込み方法はデジタル署名を使用した例です。

for OS X










for iPhone







