ไคลเอนต์ HTTP ที่ปลอดภัยสำหรับ Android และ Java ทำให้เรียกข้อมูล JSON หรือข้อมูลที่มีโครงสร้างอื่นๆ ได้อย่างง่ายดาย
วันนี้เราจะพัฒนาแอปง่ายๆ ที่สร้างคำขอ HTTP GET แบบง่ายๆ ไปยังเซิร์ฟเวอร์และดึงออบเจ็กต์ JSON ในการตอบกลับ
เริ่มต้นด้วยการสร้างโปรเจ็กต์ใน Android Studio
- ตามปกติให้สร้างโปรเจ็กต์ Android
- เปิดระดับแอป build.gradle และเพิ่มการอ้างอิง Retrofit, Gson เช่นนี้
3. เพิ่มสิทธิ์ INTERNET ในไฟล์ AndroidManifest.xml
4. ต่อไป เราจะพยายามดึงข้อมูล JSON นี้จากเซิร์ฟเวอร์
https://jsonplaceholder.typicode.com/posts
เราจะใช้ข้อมูลจำลองจากเว็บไซต์ข้างต้น
5. ตอนนี้สร้างคลาส Model เช่นนี้ Post.java
ชื่อตัวแปรจะต้องเหมือนกับชื่อคีย์ของ JSON
เช่น. ชื่อคีย์ JSON 'userId' ชื่อตัวแปรต้องเป็น 'int userId'
จะเป็นอย่างไรหากฉันต้องการใช้ชื่ออื่น
ใช่ คุณทำได้ เพียงใช้คำอธิบายประกอบที่ได้รับจาก Retrofit '@SerializedName("body")'
6. จากนั้น สร้างไฟล์อินเทอร์เฟซ JsonPlaceHolderApi.java อินเทอร์เฟซนี้ประกาศวิธีการ getPosts()
นี่คือ URL พื้นฐาน https://jsonplaceholder.typicode.com/
และนี่คือ URL ที่เกี่ยวข้องของเรา https://jsonplaceholder.typicode.com/โพสต์
คำอธิบายประกอบการติดตั้งเพิ่มเติมแบบพิเศษเพื่อเข้ารหัสรายละเอียดเกี่ยวกับพารามิเตอร์และวิธีการร้องขอ
7. ออกแบบอินเทอร์เฟซผู้ใช้ MainActivity.xml
7. ขั้นตอนสุดท้าย ในเมธอด onCreate() ของ MainActivity.java ให้สร้างตัวจัดการสำหรับอินเทอร์เฟซ RetrofitInstance
รับผลลัพธ์จากคำขอแบบอะซิงโครนัส — คำขอทำงานเบื้องหลัง
การใช้คำขอแบบอะซิงโครนัสบังคับให้คุณใช้ Callback
ด้วยวิธีการโทรกลับสองวิธี: onResponse()
และ onFailture()
onResponse() เรียกใช้เมื่อการตอบสนองสำเร็จจากเซิร์ฟเวอร์
onFailture()เรียกใช้เมื่อ URL ไม่ถูกต้องหรือ URL ถูกลบอย่างถาวร
ข้อมูลโค้ดต่อไปนี้แสดงให้เห็นถึงการใช้งานที่เป็นแบบอย่าง
8. ตอนนี้เปิดปุ่มเรียกใช้
ในที่สุดคุณจะเห็นรายการข้อมูลข้อความที่ดี
รับโปรเจ็กต์เต็มบน GitHub
ข้อเสนอแนะยินดีต้อนรับ!