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=";