ひとりぶろぐ

価値ある情報をユーザー視点で発信するブログ

iPhone/Macブロガー専用htmlジェネレータAppStoreHelperテスト版

      2016/05/24

appstorehelper01.png

AppStoreHelperとは

AppStoreHelperは、AppleのApp Store 、Mac App Store(以下App Store)で扱うアプリケーションをブログなどで紹介しまくる人のために作られたアプリケーションです。

操作風景の動画(Flash直リン): AppStoreHelper紹介スクリーンキャスト

iPhone/iPadアプリをブログで紹介する場合は、必ずApp Storeへのリンクを張ることになりますが、URL、各種諸元を調べ、アイコンを取得してタグを編集するのが面倒です。

LinkShareのアフィリエイトをやっている場合には、個々のリンクに対してアフィリエイトのURLを生成して貼り込む必要があるため、さらにひと手間かかります。

こういう面倒は機械に任せるのが正解であるため、この辺りを全自動にするhtml生成ソフトウェア「AppStoreHelper」を作ってみました。

例えばこんなのや、

OmniFocus for iPhone App
カテゴリ: 仕事効率化
価格: ¥2,300

こんなのが、

OmniOutliner for iPad (Version 1.0.1) App
カテゴリ: 仕事効率化
価格: ¥2,300
デベロッパ名: The Omni Group
リリース日: 2011/05/12
対応デバイス: iPad23G / iPad3G / iPadWifi / iPad2Wifi
iPhone iPhone

瞬時に作れます。(続きは[MORE]から)

 

 

免責

AppStoreHelperは無保証です。
自己責任でお使いください。

ネイティブ版ダウンロード(人柱版)

ダウンロード Ver.0.65alpha(人柱版): AppStoreHelper-0.65alpha

ダウンロード Ver.0.64alpha(人柱版): AppStoreHelper-0.64alpha

ダウンロード Ver.0.63alpha(人柱版): AppStoreHelper-0.63alpha

ダウンロード Ver.0.62alpha(人柱版): AppStoreHelper-0.62alpha

ダウンロード Ver.0.61alpha(人柱版): AppStoreHelper-0.61alpha.zip

ダウンロード Ver.0.6alpha(超人柱版): AppStoreHelper-0.6alpha.zip

動作確認環境

  • Mac OS X 10.7.5

履歴

  • 2014.04.01: Ver.0.65alpha
    • $trackId$などのマクロが展開できなかったのを修正
  • 2013.08.20: Ver.0.64alpha
    • LinkShare非対応、新アフィリエイトプログラムのPHGに対応。UIを日本語化
  • 2013.08.02: Ver.0.63alpha
    • スクリーンショットの拡張子に、「jpeg」を付けるアプリが多数登場ということで、拡張子チェックから外しました。
  • 2012.10.17: Ver.0.62alpha
    • 評価の星の画像のリンク切れに対応。設定の「Default」ボタンを押して初期値を更新してください。カスタマイズした項目がデフォルト値に戻ってしまうので、あらかじめバックアップを
  • 2012.10.17: Ver.0.54
    • 評価の星の画像のリンク切れに対応。設定の「Default」ボタンを押して初期値を更新してください。カスタマイズした項目がデフォルト値に戻ってしまうので、あらかじめバックアップを
  • 2012.06.26: Ver.0.61alpha
    • 評価の星の画像のリンク切れに対応。アプリ名が英語になってしまう症状に対応
  • 2012.06.26: Ver.0.53
    • 評価の星の画像のリンク切れに対応。アプリ名が英語になってしまう症状に対応
  • 2011.06.18: Ver.0.52
    • 起動時に検索キーワード入力欄にフォーカスを合わせるように
    • 検索結果を選択後、ダブルクリックのほか、return押下でもApp Storeにジャンプできるように
  • 2011.06.15: Ver.0.51 各種不具合への対策
    • たまに検索結果として表示されるアプリのアイコンが小さいことがある問題に対処
    • スクリーンショットとしてpng、jpg以外の画像が登録されている場合に警告を出すように
  • 2011.06.12: Ver.0.5 各種変更・機能追加
    • AppStoreHelperのアプリケーションアイコンを調整
    • 検索結果表示時に、フォーカスをキーワード入力欄から検索結果のリストに移動するように
    • Format入力部分のスペルチェックをオフに
    • マクロ$longSideShouldBe:000$、$shortSideShouldBe:000$、$ssWidth1$〜$ssWidth6$、$ssHeight1$〜$ssHeight6$、$ssClass1$〜$ssClass6$を追加。詳細は「Ver.0.5で追加されたスクリーンショット系のマクロについて」を参照
    • デフォルトのFormat4を、新設マクロを利用したものに変更
  • 2011.06.10: Ver.0.42 AppStoreHelperのアプリケーションアイコンのフリンジを削除。マクロ$appStoreBadgeSUrl$、$appStoreBadgeLUrl$を新設。App Storeへのリンクによく使うバッジの画像へのリンクです。Search TypeにMacが指定されていた場合には、自動的にMac App Storeのバッジになります。
  • 2011.06.10: Ver.0.41 すいません。Ver.0.4が開発用の変な動作(検索結果のアプリ名が$supportedDevices$)だったので訂正
  • 2011.06.10: Ver.0.4 各種機能追加
    • 検索結果をダブルクリックすると、App Storeにジャンプするように
    • マクロ$ssUrls$、$ssUrl1$〜$ssUrl6$を新設。$screenshotUrl1$と$ipadScreenshotUrl1$とを使い分けずに済ませるためのものです。$ss〜$の新設に伴い、$screenshot〜$マクロは使う必要が無くなるはずです
    • $supportedDevices$の返り値を、可読性が高い形に整形(iPad23G→iPad 2 Wi-Fi+3G)
    • LinkShareのアフィリエイトリンクの生成を指定している場合、出力するタグの末尾にLinkShareのBentoBox(http://www.bento-box.jp/)登録アプリケーション用の使用実績調査のためのタグ(1 pixel x 1 pixelのgif)を追加するように。AppStoreHelperの発展的な今後のためです。ご協力お願い致します
  • 2011.05.19: Ver.0.3 各種機能追加
    • ウインドウの表示位置をアプリケーション終了時に保存、次回起動時に復元するように
    • Type、Formatの選択状態をアプリケーション終了時に保存、次回起動時に復元するように
    • アプリケーションの評価(4.5など)を★の数で表示するマクロ$averageUserRatingForCurrentVersionByStars$、$averageUserRatingByStars$を追加
    • マクロ$averageUserRatingByStars$、$averageUserRatingForCurrentVersionByStars$の追加に関連して初期設定設定項目にStar img tag、Half star img tagを追加
    • 各既存マクロ展開時に、データが無かった場合の挙動を変更。例えば、$appName$は名前が無かったら空文字になっていたのを「無し」にするようにした
    • 検索のクエリを出すときにlang=ja_jp引数を追加し、$genres$、$trackName$などが日本語になった
    • 表示する検索の上限を初期設定から設定できるようにした
    • デフォルトのFormat 4を、新設のマクロ$averageUserRatingByStars$などを使う形に変更
    • MarsEdit3、ecto3連携スクリプトを、AppStoreHelper.appを「/アプリケーション」(/Applications)にインストールすることを前提にする形で修正
  • 2011.05.17: Ver.0.2 MarsEdit3連携用スクリプトと説明を修正
  • 2011.05.14: Ver.0.2 諸々変更
  • 2011.05.14: Ver.0.1

インストール方法

AppStoreHelper.appを「/アプリケーション」(/Applications)フォルダにコピーすればインストールは終了です。

基本的な使い方

  • AppStoreHelperを起動
  • 検索フォームにキーワードを打ち込んでreturnキーを押す
  • 検索結果のうち、どれか一つを選択
  • 「Copy Tag」ボタンを押す

基本的にはこれだけです。
「Copy Tag」ボタンを押した時点でクリップボードにhtmlがコピーされるので、ブログなどにペーストしてください。

また、検索結果をダブルクリックすると、App Storeにジャンプします。

操作風景の動画(Flash直リン): AppStoreHelper紹介スクリーンキャスト

以降は応用

以降の説明は応用の使い方なので、面倒なことが嫌いなら読まなくてOKです。

ecto3のヘルパーとして動作させる場合のインストール方法

appstorehelper02.png

AppStoreHelperはecto3と協調して動きます。

ecto3を使っていれば、AppStoreHelperをPlug-in的に動作させることができます。

ecto3からAppStoreHelper起動時に選択範囲を受け取り、それを検索キーワードとして使用。

また、AppStoreHelper終了時に生成したタグをecto3のエディタに挿入でき、シームレスな連携ができます。

ecto3のヘルパーとして機能させる場合は、

  • ecto3のメニュー「ecto>Settings…>Tools & Addons>(ポップアップメニュー)Scripts」を選択
  • Scriptsのダイアログの「Open Script Folder」を押す
  • 開いたフォルダにAppStoreHelper.shをコピー
  • ecto3を再起動

上記の手順でインストールが完了です。AppStoreHelper.shはAppStoreHelper.appが「/アプリケーション」(/Applications)フォルダにあることを前提とした内容になっているので、確認してください。

ecto3のメニュー「Tools>Scripts>AppStoreHelper」からAppStoreHelperを起動できます。

ちなみに、ecto3のヘルパーとして起動させる場合、AppStoreHelper動作中はecto3の動作をブロックしているため「Insert tag」を押しても、即座にecto3のエディタに挿入されるわけではありません。AppStoreHelperを終了させたタイミングでタグが挿入されます。

ecto3のヘルパー動作に対しキーボードショートカットを付与

ecto3のメニュー「Tools>Scripts>AppStoreHelper」から起動できますが面倒です。

  • 「システム環境設定>キーボード>キーボードショートカット>アプリケーション」を表示
  • 「+」ボタンを押下
  • 「アプリケーション」で「ecto」を選択
  • 「メニュータイトル」は「AppStoreHelper」
  • キーボードショートカットに適当なキーボードショートカットを設定
  • 「追加」ボタンを押下

以上の設定をすることで、ecto3を使っている最中に設定したキーボードショートカット押下でAppStoreHelperを起動することができるようになります。便利です。


MarsEdit3のヘルパーとして動作させる

最強ブログエディタの一つ、MarsEdit3とも連携可能です。

MarsEdit App
カテゴリ: ソーシャルネットワーキング
価格: ¥4,600

関連エントリ: 最強ブログエディタMarsEdit3をさらに強化するハック

解凍して出てくるAppStoreHelper.scptが、MarsEdit3連携用のスクリプトです。

MarsEdit3のメニュー「(AppleScriptアイコン)>Open Script Folder」を実行。

Marsedit3 03

以下のディレクトリをFinderで開きます。

/ユーザ/自分のユーザ名/ライブラリ/Application Support/MarsEdit/Scripts

ここに、スクリプトAppStoreHelper.scptをコピー。さきほどのAppleScriptアイコンのメニューにAppStoreHelperが出現するようになります。

上記の手順でインストールが完了です。AppStoreHelper.scptもまた、AppStoreHelper.appが「/アプリケーション」(/Applications)フォルダにあることを前提とした内容になっているので、確認してください。

MarsEdit3のエディタで作業中に、AppleScriptメニューから「AppStoreHelper」を起動。

テキストが選択中だった場合は、それがAppStoreHelperに引き渡されます。

AppStoreHelperの実行が終了すると、MarsEditのカーソル位置にタグが挿入されます。

MarsEdit3のヘルパーとして起動させる場合も、AppStoreHelper動作中は「Insert tag」を押しても、即座にMarsEdit3のエディタに挿入されるわけではありません。AppStoreHelperを終了させたタイミングでタグが挿入されます。

「ecto3のヘルパー動作に対しキーボードショートカットを付与」の項でやったecto3での場合と同様に、キーボードショートカットを割り当てると便利でしょう。

Insert tagボタンはブログエディタ連携専用

AppStoreHelperを単独で動かした場合は、Insert tagボタンは役に立ちません。

AppStoreHelperを単独で動かす場合はCopy tagボタンを使ってください。

AppStoreHelperで使えるキーボードショートカット

  • 検索フォームにフォーカスをジャンプ: Command + Shift + F
  • タグを連携中のブログエディタに挿入: Command + I
  • タグをクリップボードにコピー: Command + T
  • フォーマット選択(ロータリー動作): Command + F
  • 検索対象選択(ロータリー動作): Command + D

設定

メニュー「AppStoreHelper>Preferences…」から動作に関する設定ができます。

appstorehelper03-2.png
  • LinkShare token: LinkShareのアフィリエイトリンクを生成するために必要なtokenを入力します。この入力欄の右側にある「?」ボタンを押すと、LinkShareの当該ページに飛ぶ事ができます。「このサイトアカウントのトークン」の下にあるのがここで言っているtokenです。まだ生成したことが無ければ「トークンの更新」ボタンを押すと生成することができます
  • Generate LinkShare affiliate link: 「LinkShare token」を使ってアフィリエイトリンクを生成するかどうかを決めます。ここをオフにしていると、後述する「$trackViewUrl$」マクロがアフィリエイト無しのURLに展開され、オンにしているとアフィリエイトリンクとして展開されます。「LinkShare token」が入力されていない場合は、ここをオンにしていてもアフィリエイトリンクにはなりません。入力されたtokenが無効なものだった場合はエラーメッセージとして展開されます
  • Star img tag: Ver.0.3から追加されたマクロ$averageUserRatingForCurrentVersionByStars$と$averageUserRatingByStars$で使われる★のイメージになるimgタグです。星4つの評価の場合、このタグが4回繰り返されることになります
  • Half star img tag: Ver.0.3から追加されたマクロ$averageUserRatingForCurrentVersionByStars$と$averageUserRatingByStars$で使われる星半分のイメージになるimgタグです。星4.5の評価の場合、このタグが最後に1回使われます
  • Search up to: 表示する検索結果の上限を指定します。10なら、検索結果が100件あったとしても、最初の10件だけ表示します。大きい数を指定すると、遅く、落ちやすくなると思います。必要最小限にとどめておくことをおすすめします
  • Floating Window (need reboot): AppStoreHelperのウインドウを常に最前面に置くかどうかを決めます。設定変更後は一度AppStoreHelperを再起動する必要があります
  • Format 1〜Format4: タグの書式を4種類設定できます。設定したタグは、AppStoreHelperのメインウインドウのFormatで選択できます。アプリケーションそれぞれに違う名前、URL、価格といった情報は、ここではマクロとして記述しておきます。例えば、アプリケーションの個別のURLは「$trackViewUrl$」、アプリケーションの名前は「$appName$」といった具合です

マクロ

Formatの中で指定できるマクロはたくさんあります。マクロの名前は、一部別名を付けたものもありますが、The iTunes Store Web Service Search APIから与えられたものに準拠しています。(実際にAPIから返却されたJSONの例

たくさんありますが、実際に知っておけばいいのは、濃い緑で色を付けたところぐらいかと思います。

また、埋め込みを想定して整形してない要素もあります。リクエストがあったら言ってください。

Ver.0.5で追加されたスクリーンショット系のマクロについて

Ver.0.5でスクリーンショット系のマクロをいろいろ追加しました。

$longSideShouldBe:000$、$shortSideShouldBe:000$、$ssWidth1$~$ssWidth6$、$ssHeight1$~$ssHeight6$、$ssClass1$~$ssClass6$です。

何が目的のマクロ追加か?

iPhone / iPadのスクリーンショットは縦画面と横画面の2種類ありますが、縦横どちらが来てもサイズを維持できるようにするための追加です。

たくさんあって何だかよく分からないという印象を持っていることと思いますが、階層構造としてはこんな感じです。スクリーンショット6枚分のセットがあるわけです。

  • $longSideShouldBe:000$ もしくは $shortSideShouldBe:000$
    • $ssUrl1$
      • $ssWidth1$
      • $ssHeight1$
      • $ssClass1$
    • $ssUrl2$
      • $ssWidth2$
      • $ssHeight2$
      • $ssClass2$
    • $ssUrl3$
      • $ssWidth3$
      • $ssHeight3$
      • $ssClass3$
    • $ssUrl4$
      • $ssWidth4$
      • $ssHeight4$
      • $ssClass4$
    • $ssUrl5$
      • $ssWidth5$
      • $ssHeight5$
      • $ssClass5$
    • $ssUrl6$
      • $ssWidth6$
      • $ssHeight6$
      • $ssClass6$

デフォルトのFormat4がこれを使ったものになっていますので、Preferencesを開き、自分でカスタマイズしたFormatをどこかに保存した上で「Default」ボタンを押してデフォルトのFormatを読み出し、「Save」ボタンでセーブした上で動作を確認してみると理解できるでしょう。

まずFormatのどこかに$longSideShouldBe:000$もしくは$shortSideShouldBe:000$を指定します。
「000」の部分にはピクセル数を指定します。指定ピクセル数を読み出した後は削除され、マクロ展開後に残ることはありません。

$longSideShouldBe:000$はスクリーンショットの長辺を指定するマクロです。
$shortSideShouldBe:000$はスクリーンショットの短辺を指定するマクロです。
このどちらかを指定します。

例えば、以下のようなマクロを指定。

$shortSideShouldBe:240$

<img src="$ssUrl1$" class="$ssClass1$" width="$ssWidth1$" height="$ssHeight1$" />

$ssUrl1$がiPhoneの縦画面、320×480のスクリーンショットへのURLだったとすると、

  • $ssUrl1$:
    • スクリーンショットのURLに展開
  • $ssClass1$:
    • iPhoneの縦画面なので「iPhonePortrait」に展開
  • $ssWidth1$:
    • 縦画面の幅=短辺なので$shortSideShouldBe:240$の指定がそのまま適用され240に展開
  • $ssHeight1$:
    • 縦画面の高さ=長辺なので$shortSideShouldBe:240$の指定から、240÷320×480という計算の元に360に展開

といった感じで展開されます。$ssUrl1$がゲームに多い横画面のスクリーンショットへのURLだった場合、横画面の高さ=短辺ということになるので、高さを基準に幅が計算され、$ssHeight1$は$shortSideShouldBe:240$の指定がそのまま適用され240、$ssWidth1$が360になります。

結果、縦でも横でもサイズが維持されます。

デフォルトのFormat募集

デフォルトのFormatがしょぼいので、いいFormatを作ったら教えてください。

使用上の制約事項

あまり連続してLinkShareのアフィリエイトリンクを生成すると、しばらくLinkShareのAPIがエラーを返してくるようになります。

既知の不具合

RubyCocoaは結構不安定みたいで、たまにメモリ管理系のエラーで落ちることがあります。これはどうしようもなさげ。

テスト公開なので、変なところがあったらコメントなどで教えてください。

エラー等を報告する際は、「/アプリケーション/ユーティリティ/コンソール.app」の、当該のエラーを貼ってください。

iPhone界の反応

なちこさんがAppStoreHelperを紹介してくれました。オリジナルのFormatを公開されています。

【iPhone・Macブロガー必須!】 @hitoriblog さん作『AppStoreHelper』を使ってみました♪

どんぴさんも北。

iPhoneアプリをブログ上で簡単に紹介できてしまうツール「AppStoreHelper」(要Mac+Ruby環境)

AppStoreHelperをもうちょっと深く使ってみる。〜 AppHtmlのテンプレートをAppStoreHelperへ移植作業をやってみた。

ごりゅさんも北。

iPhone iPad Macアプリのリンクがちょー簡単に作れるAppStoreHelper MarsEditとも連携してすんげー便利

くらさんきた。

iPhone/Macブロガー専用htmlジェネレータAppStoreHelperが凄い!

あぷばんきた。

【超絶】iPhone/iPad ブロガーは全員AppStoreHelperを使うしかない。時間が30分の1になった。捗るぞ!

御大きた!

AppStoreHelperはAppHtmlの理想系かも知れない♬

西東京iPhoneDevelopers (#wtidev)の主催者 @tmokita さんからもきた!

AppStoreHelperがすごい

そらさん。説明が丁寧。

App Storeへのリンクタグがectoから速攻で貼れるAppStoreHelperがすごすぎ!

ゆめいろデザインさん。HTML5版のフォーマット!

@hitoriblogさん作 AppStoreHelperを導入・カスタマイズしてみました。

するぷろの@isloopさん北!flickrでツモってきた写真が神速っぽい。

神速でAppStoreのアフィリエイトリンクが作れるMacアプリ「AppStoreHelper」

俺ついにクリオネになったよ!

ヒトリブログさんのAppStoreHelperを導入したらとんでもなく便利だった

どんぴさん続報

AppStoreHelper v0.5 バージョンアップ 〜画像取得ロジックが向上。さらに便利になった。

ネタフル掲載!

「AppStoreHelper」iPhone/iPadのアフィリエイトリンクを光速で生成する神ソフト!

MarsEditでブログを書くときに欠かせない2つのスクリプト – sorarium

謝辞

全然普通じゃない普通のサラリーマンのiPhone日記のhiro45jp氏作、AppHtml/MacHtmlに着想を得ています。ありがとうございます。

JSONのパースにChihiro ItoさんのSimple JSON parser & builderを利用させていただきました。ありがとうございます。

 - iPad, iPhone, OS X, Ruby