楽天Webサービスを利用したジャンル別商品検索
このサンプルでは、楽天ウェブサービスのAPIを使ってジャンル別の商品を検索します。
楽天ウェブサービスを利用するには、デベロッパーIDが必要です。既に楽天会員である方には、メールでデベロッパー ID が送られているはずですので、それを使用します。また会員でない方は、下記 URL に入り、「新規登録」をしてデベロッパーID を取得してください。会員の方は、ログイン画面からIDとパスワード入力するとデベロッパーIDがメールで送られてきます。
→参照:楽天WEB SERVICE ログイン画面
楽天Web Serviceの提供APIの詳細については下記URLを参照してください。
→参照:楽天WEB SERVICE 楽天商品検索API
※ジャンル別商品検索における最新の version は 2010-09-15 です。
まずは、このプログラムで実装する機能の動作を、下記に解説しておきます。
実行するとジャンルを選択するListBoxが表示されます。ジャンルの一覧から「本,雑誌,コミック」を選択し、検索キー入力ボックスに「修羅の門」と入力します。関連するコミックの一覧がListBoxに表示されます。任意のコミックを選択すると、WebBrowserTaskが起動して、該当するコミックのサイトが表示されます。タッチスクリーンご使用の場合は2本の指で拡大縮小が可能です(図1)。
図1:該当するコミックの一覧が表示され、クリックするとサイトが表示される(クリックで拡大) |
サンプル一式は、会員限定特典としてダウンロードできます。記事末尾をご確認ください。
実機(IS12T)で動かした動画はこちらです。
プロジェクトの作成
VS 2010のメニューから[ファイル(F)/新規作成(N)/プロジェクト(P)]を選択します。次に、「Windows Phone アプリケーション」を選択して、「名前(N)」に任意のプロジェクト名を指定します。ここでは「RakutenSearch」という名前を付けています。Windows Phoneのバージョンは7.1を選択します。
ソリューションエクスプローラー内に、ジャンル別IDを記録した、リスト1のXML文書ファイル(RakutenGenreId.xml)を追加しています。
またVS2010のメニューから「プロジェクト(P)/参照の追加(R)」と選択して、System.Xml.Linqを追加しておきます。
ダウンロードされたファイルにはXML文書ファイルは追加済みです。
リスト1 XML文書ファイル(RakutenGenreId.xml)
<?xml version="1.0"?> <Items> <genreId title="CD,DVD,楽器">101240</genreId> <genreId title="インテリア,寝具 ">100804</genreId> <genreId title="おもちゃ,ホビー,ゲーム">101164</genreId> <genreId title="キッズ,ベビー,マタニティ">100533</genreId> <genreId title="キッチン,日用品雑貨,文具 ">215783</genreId> ~<genreId></genrrId>繰り返し~ </Items>
Microsoft.Phone.Controls.Toolkitの追加
このサンプルには、ジャンルの一覧が表示されているListBox内の項目を選択した際、傾き効果を視覚的に提供する、TiltEffectを使っています。TiltEffect効果を持たせるには、VS2010メニューの「プロジェクト(P)/参照の追加(R)」から、Microsoft.Phone.Controls.Toolkitを追加し、toolkitという名前空間を定義します。「Windows Phone Toolkit - August 2011 (7.1 SDK) 」がリリースされるまでは、TiltEffectはデフォルトでは提供されてなく、別途、ControlTiltEffect.dllを入手して参照する必要がありました。しかし「Windows Phone Toolkit - August 2011 (7.1 SDK) 」からは、デフォルトでTiltEffectがサポートされていますので、Microsoft.Phone.Controls.Toolkitを追加して名前空間を定義するだけで使用が可能になりました。
VS2010メニューの「プロジェクト(P) /参照の追加(R)」と選択して、「.NET」タブ内のMicrosoft.Phone.Controls.Toolkit を選択して[OK]ボタンをクリックします。もし、「.NET」タブ内にMicrosoft.Phone.Controls.Toolkit が存在しない場合は、「参照」タブから、C:\Program Files\Microsoft SDKs\Windows Phone\v7.1\Toolkit\Aug11\Binフォルダー内にあるMicrosoft.Phone.Controls.Toolkit.dllを指定してください(図2)。
図2:「Microsoft.Phone.Controls.Toolkit.dll」を指定する(クリックで拡大) |
次に、
図3:名前空間toolkitの値にMicrosoft.Phone.Controls(Microsoft.Phone.Controls.Toolkit)を選択」する(クリックで拡大) |
名前空間の定義ができたところで、同じく、
図4:「toolkit:TiltEffect.IsTiltEnabled="True"」と選択する |
「楽天Webサービスを利用したジャンル別商品検索」サンプルプログラム