■携帯電話からグーグルを利用する (Google4.aspx)

 

ASP.NET Mobileコントロールを使用して携帯電話からグーグルのWebサービスを利用するサンプルを紹介します。

 

VS.NET を起動してASP.NETモバイルWebアプリケーションのプロジェクトを作成したら、新規モバイルWebフォームを作成します。Webフォームには3個のFormを作成します(10)Form1には、TextBoxSelectionListCommandコントロールを配置します。TextBoxにはキーワードを入力します。SelectionListには、日付の期間(1年前、1ヶ月前、1週間前、昨日、今日)を表示します。Form2Listには、検索結果として戻り値DataViewの「タイトル」を表示します。Form3TextViewにはDataViewの「スニペット(概要)」を表示します。

 

図10:新規モバイルWebフォームを作成したらForm1, Form2, Form3を作成する

 

リスト5: [検索]ボタンを押したときの処理 (Google4.aspx.vb)

Private Sub cmdSearch_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdSearch.Click

  Dim strQuery As String =txtQueryTerm.Text

  Dim strDays As String = lstDate.Selection.Value

  ActiveForm = Form2

  Dim intDays As Integer = Int32.Parse(strDays)

  Dim intBaseDate As Integer = g2j(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day, DateTime.Now.Hour, DateTime.Now.Minute, DateTime.Now.Second)

  Dim strDateRange1 As String = (intBaseDate - intDays).ToString()

  Dim strDateRange2 As String = intBaseDate.ToString()

  Dim strSearchTerm As String = strQuery & " daterange:" & strDateRange1 & "-" & strDateRange2

  mdvResults = GoogleServices.Google.GoogleSearch(strSearchTerm)

  Session("GoogeResults") = mdvResults

  lstResult.DataSource = mdvResults

  lstResult.DataBind()

End Sub

 

リスト6:Listから「タイトル」を選択したときの処理 (Google4.aspx.vb)

Private Sub lstResult_ItemCommand(ByVal sender As Object, ByVal e As System.Web.UI.MobileControls.ListCommandEventArgs) Handles lstResult.ItemCommand

  Dim intAutoID As Integer = Int32.Parse(e.ListItem.Value) - 1

  mdvResults = Session("GoogeResults")

  ActiveForm = Form3

  txtvSnippet.Text = String.Format("{0}<br><a href='{1}' >{2}</a>", _

    mdvResults(intAutoID).Item("Snippet"), _

    mdvResults(intAutoID).Item("URL"), _

    mdvResults(intAutoID).Item("URL"))

End Sub

 

Webモバイルフォームを表示するには、携帯電話のシミュレータを使用します。ここでは、iモードHTMLシミュレータII(※)を使用してWebモバイルフォームを表示します。シミュレータを起動したら「http://localhost/wd02m/Google4.aspx」のURLを入力してWebモバイルフォームを表示します。「iモードHTMLブラウザ」にForm1が表示されたらキーワード「ajax」を入力して[検索]ボタンを押します。Form2に検索結果としてタイトルが表示されます。タイトルを選択するとForm3にスニペット(概要)が表示されます(11)

 

iモードHTMLシミュレータIIは、「http://www.nttdocomo.co.jp/p_s/imode/flash/tool2.html」からダウンロードすることができます。

 

図11:キーワードに「ajax」を入力して[検索]ボタンを押す