2 คะแนน โดย GN⁺ 2023-08-28 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • บทความนี้เป็นกรณีศึกษาเกี่ยวกับความท้าทายในการดูแลรักษาแอป Android แบบเลกาซีเมื่อ Google อัปเดตข้อกำหนด
  • ทีมของผู้เขียนรับผิดชอบแอป Android ที่มีความเสถียรมาหลายปี และไม่มีการพัฒนาอย่างต่อเนื่อง
  • Google ส่งอีเมลกำหนดให้ทุกแอปต้องกำหนดเป้าหมาย API ระดับ 31 ขึ้นไป เพื่อให้ผู้ใช้บนอุปกรณ์ที่รัน Android OS เวอร์ชันสูงกว่าระดับ API เป้าหมายของแอปยังสามารถใช้งานแอปต่อไปได้
  • ผู้เขียนอัปเดต targetSdkVersion จาก API ระดับ 30 เป็น 33 และนำ dependency ที่เข้ากันไม่ได้ซึ่งเกี่ยวข้องกับการวิเคราะห์ออก
  • แอปที่อัปเดตแล้วถูกอัปโหลดขึ้น Google Play Store สำเร็จ และในตอนแรกก็ดูเหมือนจะทำงานได้ตามคาด
  • อย่างไรก็ตาม ลูกค้ารายงานว่ามีปัญหาในการเข้าสู่ระบบบัญชีด้วยแอปเวอร์ชันล่าสุด แอปแครชหลังจากล็อกอินบนอุปกรณ์ Android จริง
  • ปัญหานี้เกิดขึ้นเฉพาะกับ Android เวอร์ชันล่าสุดในขณะนั้น (13) และผู้เขียนตระหนักว่าตนไม่ได้ทดสอบแอปบนเวอร์ชันนี้
  • ผู้เขียนพยายามย้อนกลับไปใช้เวอร์ชันก่อนหน้าที่ยังทำงานได้จาก Google Play Store แต่ทำไม่ได้เพราะข้อจำกัดของ Google
  • จากนั้นผู้เขียนพยายามย้อน targetSdkVersion กลับไปเป็น API ระดับ 30 และสร้างรีลีสใหม่บน Play Store แต่ก็ทำไม่ได้อีกเช่นกันเพราะ Google บังคับให้ต้องใช้ API ระดับ 33
  • ทางออกเดียวคือแก้ปัญหาแครชบน Android เวอร์ชันล่าสุดและสร้างรีลีสใหม่
  • ผู้เขียนแก้ปัญหาแครชที่ทราบแล้วและปล่อยเวอร์ชันใหม่ แต่แอปกลับค้างอยู่ในสถานะ "อยู่ระหว่างการตรวจสอบ" เป็นเวลานาน
  • ผู้เขียนวิจารณ์การควบคุมของ Google และ Apple ที่มีต่อการพัฒนาแอปมือถือ โดยมองว่าสิ่งนี้อาจขัดขวางไม่ให้นักพัฒนาแก้ปัญหาในระบบผลิตได้
  • ผู้เขียนเสนอให้กลับไปหา open web standards เพื่อทวงคืนการควบคุมการพัฒนาผลิตภัณฑ์/บริการ
  • ประสบการณ์ของผู้เขียนเน้นให้เห็นถึงกับดักที่อาจเกิดขึ้นจากการพึ่งพาแพลตฟอร์มของบุคคลที่สามในการแจกจ่ายแอป และความสำคัญของการทดสอบอย่างรอบด้านในทุกสภาพแวดล้อมการใช้งานที่เป็นไปได้

1 ความคิดเห็น

 
GN⁺ 2023-08-28
ความเห็นบน Hacker News
  • ความท้าทายที่นักพัฒนาต้องเผชิญจากนโยบายการพัฒนา Android ของ Google
  • นักพัฒนาจำเป็นต้องอัปเดตแอปเพื่อรองรับ Android API เป้าหมายใหม่ ซึ่งอาจกลายเป็นภาระงานใหญ่โดยเฉพาะสำหรับผู้ที่ต้องดูแลหลายแอป
  • การอัปเดตมักทำให้ปลั๊กอินเดิมใช้งานไม่ได้และต้องทดสอบอย่างกว้างขวาง ก่อให้เกิดความไม่สะดวกและความหงุดหงิด
  • นักพัฒนาบางส่วนเสนอว่า Google ควรอนุญาตให้ส่ง Progressive Web Apps (PWAs) เข้า Play Store ได้โดยตรงเพื่อบรรเทาปัญหาเหล่านี้
  • นักพัฒนาบางคนโต้แย้งว่าผู้เขียนควรทดสอบแอปบน Android เวอร์ชันล่าสุดและใช้การทยอยปล่อยอัปเดตเพื่อหลีกเลี่ยงการกระจายอัปเดตที่มีปัญหาไปยังผู้ใช้ทั้งหมด
  • คนอื่น ๆ มองว่าเมื่อพิจารณาจากขนาดและความซับซ้อนของแพลตฟอร์มแล้ว ความผิดพลาดเป็นสิ่งที่หลีกเลี่ยงไม่ได้ และ Google ควรทำให้การหยุด rollout หรือการย้อนกลับไปเวอร์ชันก่อนหน้าทำได้ง่ายขึ้น
  • มีความกังวลเกี่ยวกับประเด็นที่ Google และ Apple มีอำนาจควบคุมมาตรฐานเว็บ ซึ่งส่งผลต่อความสามารถของนักพัฒนาในการกลับไปใช้มาตรฐานเว็บแบบเปิด
  • ความเห็นบางส่วนเน้นถึงจุดประนีประนอมระหว่างการรักษาความเข้ากันได้ย้อนหลังกับการรับประกันความปลอดภัยและความน่าเชื่อถือ
  • นักวิจารณ์มองว่าการที่ผู้เขียนไม่สามารถคาดการณ์และจัดการปัญหาเหล่านี้ได้ สะท้อนถึงการขาดประสบการณ์การพัฒนา Android ระดับมืออาชีพ
  • มีข้อเสนอแนะว่านักพัฒนาควรอัปเดตแอปให้เร็วที่สุดอยู่เสมอเพื่อหลีกเลี่ยงปัญหาเหล่านี้