PhoneGap/Cordova

3 สิ่งง่ายๆ ที่ทำให้ PhoneGap Application ส่งข้อมูลไป Web service ไม่ได้

เรื่องที่เกี่ยวข้อง - can link, Connection API, How-to, PhoneGap

ถ้า Mobile แอพของเราต้องทำงานกับข้อมูลขนาดใหญ่ และอัพเดตอยู่เสมอ การเอาส่วนที่ทำงานกับข้อมูลไปไว้ที่ Web service เป็นทางเลือกที่ไม่เลวเลย Facebook และ Instagram หรือ Twitter ต่างก็ทำแบบนี้ คือเลือกที่จะเก็บข้อมูลบางส่วนไว้ และเอาข้อมูลขนาดใหญ่ไปอยู่ที่ server แทน

แต่ถ้า Mobile app ที่เราสร้างขึ้นจาก PhoneGap มันส่งข้อมูลไปที่ Web service ไม่ได้ ส่งไปแล้วนิ่ง มันเกิดอะไรขึ้น!? ปัญหาบางอย่างเหมือนเส้นผมบังภูเขา ลองไล่เช็ค 3 ข้อนี้ดู คุณอาจจะขึ้นบางอ้อ เกาหัวแกรกๆ ด้วยความเขินแบบผม “โถ่ ปัญหาแค่นี้เอง”

1. เผลอปิดสัญญาณการเชื่อมต่อ Internet หรือ Network!

อั่นหน่ะ คิดว่าใครมันจะลืมไปปิดส่วนนั้นเล่า! มีนะครับ บางทีเราลืมไป เปิด Airplane mode ค้างไว้ หรือว่าปิด Wifi แล้ว 3G ต่อไม่ติดก็มี! ทุกอย่างที่เข้าข่ายการปิดกั้นสัญญาณ ไม่ให้เครื่อง smartphone หรือ tablet ของเราต่อกับโลกภายนอกได้นั้น จะทำให้ code ใน PhoneGap application สิ่งสนิทไปอย่างน่ารักๆ เลยทีเดียว

ส่วนนี้ป้องกันได้โดยใช้ Connection API หรือเขียน code javascript ดัก timeout ไว้เพื่อแสดงปัญหาก็ได้เช่นกัน

2. IP เครื่อง server เปลี่ยน!

ปัญหาที่เคยป้อนหญ้าให้ผมและเพื่อนๆ มาแล้ว คือตอนพัฒนาเนี่ย เราไม่ได้ตั้งค่า IP เครื่องที่ใช้เป็น server ให้คงที่ครับ ดังนั้นพอมีปัญหากับ Network หรือ restart เครื่อง server ใหม่ จะมีโอกาสที่ IP ปลายทางที่เราอาจจะใส่ไว้ใน code ของ PhoneGap application ของเรา กลายเป็นวิ่งหายไปใน Network เพราะเครื่อง server ดันได้ IP ใหม่ไปซะนี่

3. Domain name ของ web service ไม่อยู่ใน White List

White List หรือที่ผมเรียกกันสนุกๆ กับนักเรียนในว่า “บัญชีขาว” มีหน้าที่ควบคุมการติดต่อจากตัว applciation ไปยัง web service ต่างๆ ซึ่งเราสามารถมาแก้ไข เพื่อควบคุม domain name ของ Web service ที่แอพเราจะติดต่อไปได้ หลายๆ ครั้งขณะพัฒนาเราจะลืมส่วนนี้ไป ทำให้เรียกข้อมูลจาก web service (เช่น Google Maps API หรือ Facebook API) ไม่สามารถทำได้ มันไปติดที่ White List นั่นเองครับ

วิธีการกำหนด White List ของแอพ Android ดูได้ที่นี่ และวิธีเขียน White List ของ iOS App ดูได้ที่นี่ครับ

สนใจเรื่อง Web Design, Adobe for Web, และ PhoneGap ฝาก Email รับบทความใหม่ๆ จากผมได้ที่นี่ครับ

ดูเนื้อหารวมเรื่อง PhoneGap ได้ที่ nextflow.in.th/phonegap

 

เริ่มต้นยุค AI ด้วยคอร์สฟรี และพรีเมี่ยม กับพล

หากชอบสิ่งที่พลเล่า เรื่องที่พลสอน สามารถสนับสนุนพลโดยการเข้าเรียนคอร์สออนไลน์ของพลนะคร้าบ

  • เข้าใจง่าย ใช้ได้จริง ออกแบบการสอนอย่างเข้าใจโดยโค้ชพล
  • มีคอร์สสำหรับคนใช้งานทั่วไป จนถึงเรียนรู้เพื่อใช้งานในสายอาชีพขั้นสูง
  • ทุกคอร์สมีใบประกาศณียบัตรรับรองหลังเรียนจบ

เราใช้คุกกี้เพื่อพัฒนาประสิทธิภาพ และประสบการณ์ที่ดีในการใช้เว็บไซต์ของคุณ คุณสามารถศึกษารายละเอียดได้ที่ นโยบายความเป็นส่วนตัว และสามารถจัดการความเป็นส่วนตัวเองได้ของคุณได้เองโดยคลิกที่ ตั้งค่า

Privacy Preferences

คุณสามารถเลือกการตั้งค่าคุกกี้โดยเปิด/ปิด คุกกี้ในแต่ละประเภทได้ตามความต้องการ ยกเว้น คุกกี้ที่จำเป็น

Allow All
Manage Consent Preferences
  • Always Active

Save