27 มิถุนายน 2557

[Android Dev Tips] จะโหลด ADT ตัวใหม่มาแทนที่ตัวเก่าต้องทำยังไง?


        เนื่องจากว่าบทความนี้เจ้าของบล็อกขอทำขึ้นมาแบบเฉพาะกิจ เนื่องจากในงาน Google I/O 2014 ได้มีการปล่อยอัปเดตตัวใหม่สำหรับ Android SDK ซึ่งก็รู้กันอยู่แล้วว่าเวลาที่ Android SDK มีการอัปเดตก็จะต้องอัปเดตตัว ADT ด้วย

        แต่ทว่าเจ้าของบล็อกเจอปัญหาว่าไม่สามารถอัปเดต ADT ได้ ทั้งๆที่ขึ้นอัปเดตให้เห็นแต่ทว่ามีปัญหาบางอย่างจึงทำให้กดอัปเดตไม่ได้ ดังนั้นทางเลือกที่ดีที่สุดก็คือดาวน์โหลดตัวใหม่ล่าสุดมาใช้แทนของเก่าซะเลย~

        ถ้าเป็นโปรแกรมทั่วๆไปแล้ว ก็คงทำแค่เพียง Uninstall ของเก่าทิ้งแล้วติดตั้งของใหม่ แต่ทว่าบน ADT นั้นไม่ได้มีการ Install โปรแกรม ดังนั้นจึงแค่ดาวน์โหลดมาเก็บไว้ที่ไหนก็ได้แล้วเปิดใช้งานได้เลยโดยไม่ต้องลบของเก่าทิ้งก็ได้ แต่ทว่าอาจจะมีขั้นตอนบางอย่างที่ต้องทำเพื่อให้ใช้งานได้ดังเดิม

        ก่อนอื่นอันใดก็ต้องไปโหลด ADT ตัวใหม่มาเสียก่อน Download ADT [Android Developer]



        สมมติว่าเจ้าของบล็อกเอาไฟล์ที่ดาวน์โหลดมาไว้ที่เดียวกันกับ ADT ของเก่าของเจ้าของบล็อก โดยตัวเก่าจะตั้งชื่อโฟลเดอร์ไว้ว่า ADT Bundle ก็ให้แตกไฟล์ตัวใหม่ออกมาซะ




        เปลี่ยนชื่อโฟลเดอร์ซักหน่อยดีกว่า เป็น ADT New ละกัน



        เข้าไปเปิดไฟล์ eclipse.exe ได้ตามปกติเลย



        เปิดครั้งแรกก็ต้องย่อมถามถึง Workspace อยู่แล้ว ดังนั้นก็ให้กำหนด Path ของ Workspace ไปที่เดิมที่เคยสร้างโปรเจคไว้ซะ ถ้าเปิด ADT ของเก่าไว้อยู่ก็ให้ปิดก่อน เพราะว่าเปิดโปรแกรมไว้หลายตัวแล้วใช้ Workspace ร่วมกันไม่ได้



        เมื่อเปิดโปรแกรมขึ้นมาเรียบร้อยแล้วสิ่งที่ต้องทำต่อก็คือกำหนด Path ของ Android SDK ให้เป็นตัวใหม่ซะ เพราะเครื่องยังคงจำ Path ของ Android SDK ตัวเก่าอยู่ โดยเลือกไปที่ Window > Preferences
     


        หรือกรณีที่ ADT เวอร์ชันใหม่กว่า Android SDK ก็จะมีแจ้งเตือนขึ้นมาทันที ก็กด Open SDK Manager ได้เลย



        เมื่อเปิดหน้าต่าง Preferences ขึ้นมาให้เลือกที่แถบ Android ตรงกรอบซ้ายมือ แล้วจะเห็นที่กรอบขวามือแสดง Android SDK ที่ใช้อยู่ ซึ่งให้ดูที่ SDK Location จะเห็นว่ายังเป็นของเก่าอยู่ ให้กดปุ่ม Browse... ซะ



        เลือกเป็นโฟลเดอร์ sdk ที่อยู่ใน ADT ตัวใหม่แล้วกด OK ซะ



        จากนั้นให้ลองกดปุ่ม Apply ดูก่อน ถ้าเลือก Path ถูกต้องก็ควรจะขึ้น Android SDK ของเวอร์ชันใหม่ จากนั้นก็กด OK เพื่อปิดหน้าต่างนี้ได้เลย



        เพียงเท่านี้ ADT ตัวใหม่ก็พร้อมใช้งานแล้ว แถมไม่ต้องลบตัวเก่าทิ้งด้วย สามารถเก็บแบคอัพไว้ก็ได้ และที่สำคัญที่หน้าต่างโปรแกรมที่เคยย้ายหน้าต่างบนโปรแกรมไปอยู่ในมุมที่ผู้ที่หลงเข้ามาอ่านชอบ เช่น เจ้าของบล็อกย้ายหน้าต่าง LogCat ไว้ที่ขวามือสุดของโปรแกรมเป็นต้น ซึ่งการตั้งค่าเหล่านี้ไม่ต้องทำใหม่ เพราะว่าโปรแกรมเก็บค่าเหล่านี้ไว้ในโฟลเดอร์ Workspace นั่นเอง จึงทำให้เมื่อใช้ Workspace ตัวเดิม รูปแบบหน้าต่างในโปรแกรมก็จะคงยังเหมือนเดิม


        อ้ออย่าลืมนะว่าจะมี Android API ล่าสุดเท่านั้น อาจจะเป็นคนละเวอร์ชันที่กำหนดไว้ในโปรเจค ดังนั้นก็เลือกเอาว่าจะไปโหลดของเวอร์ชันนั้นๆมา หรือว่าไปตั้งให้เป็นของเวอร์ชันใหม่ทั้งหมด

        หมายเหตุ - เวอร์ชันล่าสุดในตอนนี้เป็น Android L Preview กับ Android Wear 4.4 (4.4W) ซึ่ง L Preview ยังใช้จริงไม่ได้ ส่วน 4.4W เป็นของ Android Wear ทางที่ดีก็โหลด 4.4.2 มาใช้แทนด้วย

        เพิ่มเติม - ในกรณีตัวอย่างนี้จะเป็นการเปลี่ยน Android SDK ตัวใหม่ด้วยเช่นกัน แต่ถ้าผู้ที่หลงเข้ามาอ่านอยากจะลงแค่ Eclipse ใหม่ อย่างเช่นไฟล์บางอย่างในโปรแกรมมีปัญหา อยากใช้ Workspace และ Android SDK ของเก่าอยู่ ก็เพียงแค่ไปดาวน์โหลดมาใหม่ แล้วเอาแค่โฟลเดอร์ของ eclipse ไปแทนที่ของเก่าเท่านั้นเอง แล้วเช็ค Workspace กับ Path ของ Android SDK ให้เรียบร้อย


โฟลเดอร์โปรเจคมีปัญหาเมื่ออัปเดตเป็นตัวล่าสุด (ที่มาใหม่ใน Android L Developer Preview)

        ปัญหานี้น่าจะเกิดขึ้นกับผู้ที่หลงเข้ามาอ่านบางคนที่พอเปลี่ยนมาเป็น ADT ตัวใหม่ที่พึ่งปล่อยมาจากงาน Google I/O (20140626) อยู่ๆก็พบว่าโปรเจคทุกตัวนี้เครื่องหมายตกใจสีแดงและไม่มีข้อความขึ้นบอกในหน้าต่าง Console


        สำหรับเจ้าของบล็อกนั้นไม่พบปัญหาดังกล่าวแต่คาดว่าน่าจะมีผู้ที่หลงเข้ามาอ่านที่มีปัญหาเลยไปหาข้อมูลวิธีแก้ไขมาให้ โดยสาเหตุเกิดจากไฟล์ annotations.jar ที่อยู่ใน \sdk\tools\support\ นั้นหายไป (แต่เจ้าของบล็อกเช็คเครื่องตัวเองดูแล้วก็ไม่มีนะ แต่ก็ไม่มีปัญหา = = )

        ดังนั้นแก้ปัญหาด้วยวิธีง่ายๆคือไปเอา annotation.jar มาแปะไว้ที่ดังกล่าว โดยเอามาจาก Android Support Library ถ้าผู้ที่หลงเข้ามาอ่านคนใดยังไม่ได้ติดตั้งไว้ให้ไปโหลดมาจาก Android SDK Manager ซะ (ส่วนใหญ่จะติดตั้งมาให้อยู่แล้ว)



        จากนั้นเปิดเข้าไปที่ \sdk\extras\android\support\annotations\ ก็จะเห็นไฟล์ android-support-annotations.jar ให้ Copy มาไว้ที่ \sdk\tools\support\ ซะ



        ทำการเปลี่ยนชื่อให้เป็น annotations.jar ซะ (สำหรับภาพตัวอย่างเครื่องที่เจ้าของบล็อกใช้ได้ตั้งให้ซ่อนนามสกุลไฟล์ไว้ดังนั้นจึงไม่เห็นนามสกุลไฟล์)



        จากนั้นปิดโปรแกรม Eclipse แล้วเปิดขึ้นมาใหม่ซะ ก็จะไม่พบปัญหาโฟลเดอร์โปรเจคขึ้นเครื่องหมายตกใจอีกแล้ว (เฉพาะโปรเจคที่ก่อนหน้านี้ไม่ขึ้นเออเรอร์ใดๆเท่านั้นนะ โปรเจคไหนที่ขึ้นเออเรอร์ก่อนหน้านี้อยู่แล้วไม่เกี่ยวกัน)

        Credits วิธีแก้ปัญหา : Kong Mono



เหล่าพันธมิตรแอนดรอยด์

Devahoy Layer Net NuuNeoI The Cheese Factory Somkiat CC Mart Routine Artit-K Arnondora Kamonway Try to be android developer Oatrice Benz Nest Studios Kotchaphan@Medium Jirawatee@Medium Travispea@Medium