Safari拡張の自動更新方法
次のようなXMLを拡張子.plistで適当な名前で保存して、サーバーにアップします。
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Extension Updates</key> <array> <dict> <key>CFBundleIdentifier</key> <string>net.os0x.autopatchwork</string> <key>Developer Identifier</key> <string>LAM47A73AC</string> <key>CFBundleVersion</key> <string>1.2</string> <key>CFBundleShortVersionString</key> <string>1.2</string> <key>URL</key> <string>http://ss-o.net/safari/extension/AutoPatchWork.safariextz</string> </dict> </array> </dict> </plist>
Developer Identifierは開発者自身のID、CFBundleVersionは拡張のバージョン(実際に表示されるほう)、CFBundleShortVersionStringは内部用バージョン(こっそり更新したいとき用?)です。
あとは機能拡張ビルダーでマニフェストをアップデートのところにサーバーに置いたplistファイルのURLを設定すればOKです。
余談:公式のドキュメントにTeam Identifierって謎の用語があって後回しにしてたのだけど、ドキュメントが間違っていたそうだ。Developer Forumsでも確認できた。