20.11.2016 Views

ANDROID APP

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

206 บทที่ 8 เครือข่าย<br />

แอคทิวิตี้หลักที่แสดงในชุดคำสั่งที่ 8.6 เป็นการเริ่มการทำงานของวิวด้วยคำสั่ง onCreate()<br />

และตรวจจับการทำงานของปุ่มด้วย onClickListener และเมื่อมีการกดปุ่มมันก็จะเริ่มทำงานด้วย<br />

คำสั่ง SearchRequest() ซึ่งการค้นหานี้เราจะส่งค่าไปยัง Google ด้วยคำสั่งค้นหาข้อมูล<br />

ที่มีลักษณะเป็น URL และจะใช้คลาส URL ในการสร้างอินสแตนซ์ HttpURLConnection เพื่อส่งค่า<br />

URL<br />

อินสแตนซ์ HttpURLConnection สามารถอ่านสถานะของการเชื่อมต่อได้ด้วย เมื่อ HttpURL-<br />

Connection ส่งค่าของตัวแปร HTTP กลับมาถูกต้อง นั่นหมายความว่าการเชื่อมต่อไม่มีข้อผิดพลาด<br />

ข้อมูลแบบ JSON ที่ระบบตอบกลับมานั้น เราจะใช้คำสั่ง InputStreamReader ในการส่งค่าไปยัง<br />

เมธอด BufferReader เพื่ออ่านข้อมูลและสร้างอินสแตนซ์ของข้อความ และหลังจากที่ได้รับผลการ<br />

ค้นหาแล้ว เราจะใช้ฟังก์ชั่น ProcessResponse() ในการแปลข้อมูลแบบ JSON ซึ่ง API ของ Web-<br />

Kit ได้แสดงข้อมูลที่ค้นหาได้เอาไว้ใน JSONArray ดังรูปที่ 8.1 แสดงผลลัพธ์จากการค้นหาข้อความ<br />

NBA<br />

ชุดคำสั่งที่ 8.6 src/com/cookbook/internet/search/GoogleSearch.java<br />

package com.cookbook.internet.search;<br />

import java.io.BufferedReader;<br />

import java.io.IOException;<br />

import java.io.InputStreamReader;<br />

import java.net.HttpURLConnection;<br />

import java.net.MalformedURLException;<br />

import java.net.URL;<br />

import java.security.NoSuchAlgorithmException;<br />

import org.json.JSONArray;<br />

import org.json.JSONException;<br />

import org.json.JSONObject;<br />

import android.app.Activity;<br />

import android.os.Bundle;<br />

import android.util.Log;<br />

import android.view.View;<br />

import android.view.View.OnClickListener;<br />

import android.widget.Button;<br />

import android.widget.EditText;<br />

import android.widget.TextView;<br />

public class GoogleSearch extends Activity {<br />

/** Called when the activity is first created. */<br />

TextView tv1;<br />

EditText ed1;<br />

Button bt1;<br />

static String url =<br />

"http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q=";

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!