「13日の金曜日」ってことでJSONにまつわるアプリのご紹介。先日、JSON+というWeb APIサービスをJSON形式で値を取得して見やすく整形してくれるアプリがバージョン1.2へアップデートされていました。
JSON+ API Response Parser 1.3.2
ユーティリティ, 仕事効率化
App Storeで詳細を見る
ちょうどよい題材としてAppHtmlの本体部分の改修がありましたのでご報告。@hiro45jp さんにお願いしたところ、その日のうちに修正いただきました。症状は、特にアプリがリリースされた直後に起こりがちなのですが、評価がまだない状態の場合に、以下のように 「und,efi,ned件の評価」となります。
![スクリーンショット 2012-07-14 12.19.48 AM](https://farm9.staticflickr.com/8430/7562329230_31215570a9.jpg)
![スクリーンショット 2012-07-14 12.19.48 AM](https://farm9.staticflickr.com/8430/7562329230_31215570a9.jpg)
これは、iTunes Search APIが返す値がないのに、AppHtml側では表示しようとして”undefined”になってしまうためで、さらに評価数を3桁毎にカンマ区切りする後続処理があるためにこのような表示になってしまうことが原因でした。これを解消するためにif文で確認し、評価がない場合は「0件の評価」とするように改修されています。@hiro45jp さん、ありがとうございました!この改修はAppHtml本体なので登録されているブックマークレットの再作成は不要です(念のため)。
iTunes Search API
AppHtmlはiTunes Search APIを使っていまして、アプリ名などのキーワードをパラメータとして与えることで値が返されてきます。パラメーターについてはアップルが公開しています。
JSON+ Web-API Response Parserを使ってみる
JSON+を使ってiTunes Search APIをコールしてJSON形式で返ってくる値を取得してみます。
まず、新規追加画面を呼び出し、Nameに登録名、BaseURLにWeb APIを入力します。パラメーターはQuery Parametersからキーと値を別途追加できます。Nameは適当に、BaseURLは”http://itunes.apple.com/jp/search”を入力します。
![IMG_1685](https://farm9.staticflickr.com/8014/7562049372_c82d597139.jpg)
![IMG_1685](https://farm9.staticflickr.com/8014/7562049372_c82d597139.jpg)
![IMG_1686](https://farm8.staticflickr.com/7134/7562049184_b73eb629d7.jpg)
![IMG_1686](https://farm8.staticflickr.com/7134/7562049184_b73eb629d7.jpg)
パラメーターをaddボタンからひとつづつ追加していきます。パラメーターの詳細は上述のアップル公式サイトに記載があります。
term = アプリの検索キーワード
lang = 言語設定。日本語なのでja_JP
country = 日本なのでJP。通貨も連動。
entity = 検索するカテゴリを指定
limit = 最大件数
![IMG_1687](https://farm8.staticflickr.com/7251/7562048998_a7d4fd7853.jpg)
![IMG_1687](https://farm8.staticflickr.com/7251/7562048998_a7d4fd7853.jpg)
![IMG_1688](https://farm8.staticflickr.com/7275/7562048820_ba7cafc197.jpg)
![IMG_1688](https://farm8.staticflickr.com/7275/7562048820_ba7cafc197.jpg)
登録完了後に実行すると、iTunes Search APIをコールしてキーと値を取得します。右上のJSONボタンをタップするとJSON形式で表示してくれます。AppHtmlはこの値をひとつづつ加工してHTML化してくれています。
![IMG_1692](https://farm8.staticflickr.com/7108/7562047788_a3458a35b6.jpg)
![IMG_1692](https://farm8.staticflickr.com/7108/7562047788_a3458a35b6.jpg)
![IMG_1690](https://farm9.staticflickr.com/8151/7562047980_0b704f4aa9.jpg)
![IMG_1690](https://farm9.staticflickr.com/8151/7562047980_0b704f4aa9.jpg)
たとえば、アートワークのひとつを表示させてみるとWebviewで開いてくれます。
![IMG_1693](https://farm8.staticflickr.com/7274/7562047548_fe31639de3.jpg)
![IMG_1693](https://farm8.staticflickr.com/7274/7562047548_fe31639de3.jpg)
![IMG_1694](https://farm8.staticflickr.com/7111/7562047402_dcd344fce9.jpg)
![IMG_1694](https://farm8.staticflickr.com/7111/7562047402_dcd344fce9.jpg)
いかがでしょうか?AppHtmlはアプリを紹介するブログエントリの必須アイテムになっていますが、裏側の仕組みをみるのはとても興味深いですね。と同時に、@hiro45jp さんに感謝感謝です。
![スクリーンショット 2012-07-14 12.15.44 AM](https://farm9.staticflickr.com/8003/7562310774_6d96864359.jpg)
![スクリーンショット 2012-07-14 12.15.44 AM](https://farm9.staticflickr.com/8003/7562310774_6d96864359.jpg)
ユーティリティ, 仕事効率化
App Storeで詳細を見る