Android Studio 3.5 (สิงหาคม 2019)

Android Studio 3.5 เป็นรุ่นหลักและเป็นผลลัพธ์ของ Project Marble ตั้งแต่การเปิดตัว Android Studio 3.3 เป็นต้นมา โครงการริเริ่ม Project Marble ได้ครอบคลุมการเปิดตัวหลายครั้งที่มุ่งเน้นการปรับปรุง 3 ด้านหลักของ IDE ได้แก่ การทำงานที่มีประสิทธิภาพของระบบ การปรับปรุงฟีเจอร์ และการแก้ไขข้อบกพร่อง

อ่านข้อมูลเกี่ยวกับการอัปเดต Project Marble เหล่านี้และอื่นๆ ได้ใน บล็อกโพสต์ของนักพัฒนาแอป Android หรือส่วนต่างๆ ด้านล่าง

นอกจากนี้ เราขอขอบคุณผู้มีส่วนร่วมในชุมชนทุกท่านที่ช่วยเราในการเปิดตัวครั้งนี้

3.5.3 (ธันวาคม 2019)

การอัปเดตเล็กน้อยนี้มีการแก้ไขข้อบกพร่องและปรับปรุงประสิทธิภาพต่างๆ

3.5.2 (พฤศจิกายน 2019)

การอัปเดตเล็กน้อยนี้มีการแก้ไขข้อบกพร่องและปรับปรุงประสิทธิภาพต่างๆ หากต้องการดูรายการการแก้ไขข้อบกพร่องที่สำคัญ โปรดอ่านโพสต์ที่เกี่ยวข้องใน บล็อกการอัปเดตการเปิดตัว

3.5.1 (ตุลาคม 2019)

การอัปเดตเล็กน้อยนี้มีการแก้ไขข้อบกพร่องและปรับปรุงประสิทธิภาพต่างๆ หากต้องการดูรายการการแก้ไขข้อบกพร่องที่สำคัญ โปรดอ่านโพสต์ที่เกี่ยวข้องใน บล็อกการอัปเดตการเปิดตัว

Project Marble: สถานะของระบบ

ส่วนนี้อธิบายการเปลี่ยนแปลงใน Android Studio 3.5 ที่มุ่งเน้นการปรับปรุงประสิทธิภาพของระบบ

การตั้งค่าความทรงจำที่แนะนำ

ตอนนี้ Android Studio จะแจ้งให้คุณทราบหากตรวจพบว่าคุณสามารถปรับปรุงประสิทธิภาพได้ โดยการเพิ่มจำนวน RAM สูงสุดที่ระบบปฏิบัติการควรจัดสรรให้แก่กระบวนการของ Android Studio เช่น IDE หลัก, Gradle Daemon และ Kotlin Daemon คุณสามารถยอมรับการตั้งค่าที่แนะนำได้โดยคลิกลิงก์การดำเนินการในการแจ้งเตือน หรือจะปรับการตั้งค่าเหล่านี้ด้วยตนเองโดยเลือกไฟล์ > การตั้งค่า (หรือ Android Studio > ค่ากำหนด ใน macOS) จากนั้นค้นหาส่วนการตั้งค่าหน่วยความจำในลักษณะที่ปรากฏและลักษณะการทำงาน > การตั้งค่าระบบ ดูข้อมูลเพิ่มเติมได้ที่ขนาดฮีปสูงสุด

การแจ้งเตือนเกี่ยวกับการตั้งค่าหน่วยความจำที่แนะนำ

การแจ้งเตือนเกี่ยวกับการตั้งค่าหน่วยความจำที่แนะนำ

รายงานการใช้หน่วยความจำ

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

รายงานการใช้งานหน่วยความจำ

รายงานการใช้งานหน่วยความจำ

Windows: การเพิ่มประสิทธิภาพ I/O ของไฟล์ป้องกันไวรัส

ตอนนี้ Android Studio จะตรวจสอบโดยอัตโนมัติว่าไดเรกทอรีโปรเจ็กต์บางรายการ ได้รับการยกเว้นจากการสแกนไวรัสแบบเรียลไทม์หรือไม่ เมื่อมีการปรับเปลี่ยนเพื่อ ปรับปรุงประสิทธิภาพการสร้าง Android Studio จะแจ้งให้คุณทราบและแสดงวิธีการ เพิ่มประสิทธิภาพการกำหนดค่าโปรแกรมป้องกันไวรัส ดูข้อมูลเพิ่มเติมได้ที่ ลดผลกระทบของซอฟต์แวร์ป้องกันไวรัสต่อความเร็วในการบิลด์

Project Marble: การปรับปรุงฟีเจอร์

ส่วนนี้จะอธิบายการเปลี่ยนแปลงใน Android Studio 3.5 ที่มุ่งเน้นการ ปรับปรุงฟีเจอร์ที่มีอยู่

ใช้การเปลี่ยนแปลง

ใช้การเปลี่ยนแปลงช่วยให้คุณพุชการเปลี่ยนแปลงโค้ดและทรัพยากรไปยังแอปที่กําลังทํางานได้ โดยไม่ต้องรีสตาร์ทแอป และในบางกรณีก็ไม่ต้องรีสตาร์ทกิจกรรมปัจจุบันด้วย ใช้การเปลี่ยนแปลงจะใช้แนวทางใหม่ทั้งหมดในการรักษา สถานะของแอป ฟีเจอร์ใช้การเปลี่ยนแปลงจะกำหนดคลาสใหม่ได้ทันทีโดยใช้ประโยชน์จากการตรวจสอบรันไทม์ที่รองรับใน Android 8.0 (API ระดับ 26) ขึ้นไป ซึ่งแตกต่างจาก Instant Run ที่เขียนไบต์โค้ดของ APK ใหม่

ดูข้อมูลเพิ่มเติมได้ที่ใช้การเปลี่ยนแปลง

ปุ่มในแถบเครื่องมือสำหรับใช้การเปลี่ยนแปลง

ปุ่มในแถบเครื่องมือสำหรับใช้การเปลี่ยนแปลง

ขั้นตอนการติดตั้งใช้งานแอป

IDE มีเมนูแบบเลื่อนลงใหม่ที่ช่วยให้คุณเลือกอุปกรณ์ที่ต้องการ นําแอปไปใช้งานได้อย่างรวดเร็ว เมนูนี้ยังมีตัวเลือกใหม่ที่ให้คุณ เรียกใช้แอปในอุปกรณ์หลายเครื่องพร้อมกันได้ด้วย

เมนูแบบเลื่อนลงของอุปกรณ์เป้าหมาย

เมนูแบบเลื่อนลงของอุปกรณ์เป้าหมาย

ปรับปรุงการซิงค์ Gradle และการตรวจหาแคช

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

ปรับปรุงเอาต์พุตข้อผิดพลาดในการสร้าง

ตอนนี้หน้าต่างสร้าง ไอคอนหน้าต่างสร้าง มีการรายงานข้อผิดพลาดที่ดีขึ้น เช่น ลิงก์ไปยังไฟล์และบรรทัด ของข้อผิดพลาดที่รายงาน สำหรับกระบวนการบิลด์ต่อไปนี้

  • การคอมไพล์และการลิงก์ AAPT
  • R8 และ ProGuard
  • Dexing
  • การผสานทรัพยากร
  • การแยกวิเคราะห์ไฟล์ XML
  • การคอมไพล์ Javac, Kotlinc และ CMake

การอัปเกรดโปรเจ็กต์

ปรับปรุงประสบการณ์การอัปเดตเพื่อให้ข้อมูลและการดำเนินการเพิ่มเติมเพื่อช่วยคุณ อัปเดต IDE และปลั๊กอิน Android Gradle เช่น ข้อผิดพลาดในการซิงค์และสร้างเพิ่มเติม รวมถึงการดำเนินการที่จะช่วยลดข้อผิดพลาดเมื่ออัปเดต

โปรดทราบว่าคุณสามารถอัปเดต IDE แยกจากคอมโพเนนต์อื่นๆ เช่น ปลั๊กอิน Android Gradle ได้ ดังนั้น คุณจึงอัปเดต IDE ได้อย่างปลอดภัย ทันทีที่เวอร์ชันใหม่กว่าพร้อมใช้งาน และอัปเดตคอมโพเนนต์อื่นๆ ในภายหลัง

เครื่องมือสร้างเลย์เอาต์

Android Studio 3.5 มีการปรับปรุงการแสดงภาพเลย์เอาต์ การจัดการ และการโต้ตอบหลายอย่าง

เมื่อทำงานกับ ConstraintLayout ส่วนข้อจำกัดใหม่ในแผงแอตทริบิวต์จะแสดงความสัมพันธ์ของข้อจำกัดของ คอมโพเนนต์ UI ที่เลือก คุณเลือกข้อจำกัดได้จากทั้งพื้นผิวการออกแบบ หรือจากรายการข้อจำกัดเพื่อไฮไลต์ข้อจำกัดในทั้ง 2 พื้นที่

ความสัมพันธ์ของข้อจำกัดสำหรับองค์ประกอบ UI ที่เลือก

ความสัมพันธ์ของข้อจำกัดสำหรับองค์ประกอบ UI ที่เลือก

ในทำนองเดียวกัน ตอนนี้คุณสามารถลบข้อจำกัดได้โดยเลือกข้อจำกัดแล้วกดปุ่ม Delete นอกจากนี้ คุณยังลบข้อจำกัดได้โดยกดปุ่ม Control (Command ใน macOS) ค้างไว้ แล้วคลิกที่จุดยึดของ ข้อจำกัด โปรดทราบว่าเมื่อกดปุ่ม Control หรือ Command ค้างไว้และวางเมาส์เหนือจุดยึด ข้อจำกัดที่เกี่ยวข้อง จะเปลี่ยนเป็นสีแดงเพื่อระบุว่าคุณคลิกเพื่อลบได้

เมื่อเลือกมุมมองแล้ว คุณจะสร้างข้อจํากัดได้โดยคลิกไอคอน + ในส่วนวิดเจ็ตข้อจํากัดของแผงแอตทริบิวต์ ดังที่แสดงในรูปภาพต่อไปนี้ เมื่อสร้างข้อจำกัดใหม่ ตอนนี้ Layout Editor จะเลือกและไฮไลต์ข้อจำกัด ซึ่งจะให้ความคิดเห็นด้านภาพ ทันทีสำหรับสิ่งที่คุณเพิ่งเพิ่ม

ภาพเคลื่อนไหวแสดงวิธีใช้วิดเจ็ตข้อจำกัดเพื่อสร้าง
            ข้อจำกัด

การใช้วิดเจ็ตข้อจำกัดเพื่อสร้างข้อจำกัด

เมื่อสร้างข้อจำกัด ตอนนี้ Layout Editor จะแสดงเฉพาะจุดยึดที่มีสิทธิ์ ซึ่งคุณสามารถจำกัดได้ ก่อนหน้านี้ Layout Editor จะไฮไลต์จุดยึดทั้งหมด ในทุกมุมมอง ไม่ว่าคุณจะจำกัดจุดยึดเหล่านั้นได้หรือไม่ก็ตาม นอกจากนี้ ตอนนี้การวางซ้อนสีน้ำเงินจะไฮไลต์เป้าหมายของข้อจํากัด การไฮไลต์นี้มีประโยชน์อย่างยิ่งเมื่อพยายามจำกัดให้เหลือเฉพาะคอมโพเนนต์ที่ซ้อนทับกับคอมโพเนนต์อื่น

ภาพเคลื่อนไหวแสดงวิธีสร้างข้อจํากัดสําหรับคอมโพเนนต์ที่ซ้อนทับกัน
            ใน Android Studio 3.4

การสร้างข้อจำกัดสำหรับคอมโพเนนต์ที่ซ้อนทับกันใน Android Studio 3.4

ภาพเคลื่อนไหวแสดงวิธีสร้างข้อจํากัดสําหรับคอมโพเนนต์ที่ซ้อนทับกัน
            ใน Android Studio 3.5

การสร้างข้อจำกัดสำหรับคอมโพเนนต์ที่ซ้อนทับกันใน Android Studio 3.5

นอกจากข้อมูลอัปเดตข้างต้นแล้ว Android Studio 3.5 ยังมีการปรับปรุง Layout Editor ดังต่อไปนี้ด้วย

  • ตอนนี้วิดเจ็ตข้อจำกัดและเมนูแบบเลื่อนลงของระยะขอบเริ่มต้น อนุญาตให้คุณใช้ทรัพยากรมิติข้อมูลสำหรับระยะขอบได้แล้ว
  • ในแถบเครื่องมือของเครื่องมือแก้ไขเลย์เอาต์ เราได้อัปเดตรายการอุปกรณ์ที่กำหนดขนาดของ พื้นผิวการออกแบบแล้ว นอกจากนี้ เรายังปรับปรุงลักษณะการทำงานของการสแนปขณะ ปรับขนาด และตอนนี้แฮนเดิลปรับขนาดในพื้นที่ออกแบบจะ แสดงอยู่เสมอ เมื่อปรับขนาด ภาพซ้อนทับใหม่จะปรากฏขึ้นเพื่อแสดงขนาดอุปกรณ์ทั่วไป
  • Layout Editor มีรูปแบบสีใหม่ที่ช่วยปรับปรุงความสอดคล้องและลด คอนทราสต์ระหว่างคอมโพเนนต์ ข้อความ และข้อจำกัด
  • ตอนนี้โหมดพิมพ์เขียวรองรับข้อความสำหรับคอมโพเนนต์บางอย่างที่ไม่ได้แสดงข้อความ

ดูข้อมูลเพิ่มเติมเกี่ยวกับการเปลี่ยนแปลงเหล่านี้ได้ที่ Project Marble ของ Android Studio: Layout Editor

การเชื่อมโยงข้อมูล

นอกเหนือจากการเพิ่มการรองรับการประมวลผลคำอธิบายประกอบแบบเพิ่มทีละรายการ สำหรับการเชื่อมโยงข้อมูลแล้ว IDE ยังปรับปรุงฟีเจอร์และประสิทธิภาพของเครื่องมือแก้ไขอัจฉริยะ เมื่อสร้างนิพจน์การเชื่อมโยงข้อมูลใน XML

ภาพเคลื่อนไหวแสดงประสิทธิภาพของโปรแกรมแก้ไขโค้ดใน Android Studio
            3.4

ประสิทธิภาพของโปรแกรมแก้ไขโค้ดใน Android Studio 3.4

ภาพเคลื่อนไหวแสดงประสิทธิภาพของโปรแกรมแก้ไขโค้ดใน Android Studio
            3.5

ปรับปรุงประสิทธิภาพการแก้ไขโค้ดใน Android Studio 3.5

ปรับปรุงการรองรับโปรเจ็กต์ C/C++

Android Studio 3.5 มีการเปลี่ยนแปลงหลายอย่างที่ช่วยปรับปรุงการรองรับโปรเจ็กต์ C/C++

การปรับปรุงแผงตัวแปรของบิลด์สำหรับการซิงค์ตัวแปรเดียว

ตอนนี้คุณระบุทั้งตัวแปรบิลด์ที่ใช้งานอยู่และ ABI ที่ใช้งานอยู่ได้ในแผงตัวแปรบิลด์ ฟีเจอร์นี้ช่วยลดความซับซ้อนในการกำหนดค่าบิลด์ต่อโมดูล และยังช่วยปรับปรุงประสิทธิภาพการซิงค์ Gradle ได้ด้วย

ดูข้อมูลเพิ่มเติมได้ที่เปลี่ยนตัวแปรบิลด์

แผง Build Variants แสดงการเลือกรูปแบบเดียวตาม ABI

แผงสร้างรูปแบบที่มีการเลือกรูปแบบเดียวตาม ABI

NDK เวอร์ชันที่ติดตั้งควบคู่กัน

ตอนนี้คุณใช้ NDK หลายเวอร์ชันควบคู่กันได้แล้ว ฟีเจอร์นี้ช่วยให้คุณมีความยืดหยุ่นมากขึ้นเมื่อกำหนดค่าโปรเจ็กต์ เช่น หากคุณมีโปรเจ็กต์ที่ใช้ NDK เวอร์ชันต่างๆ ในเครื่องเดียวกัน

หากโปรเจ็กต์ใช้ปลั๊กอิน Android Gradle 3.5.0 ขึ้นไป คุณยังระบุเวอร์ชันของ NDK ที่แต่ละโมดูลในโปรเจ็กต์ควรใช้ได้ด้วย คุณใช้ฟีเจอร์นี้เพื่อสร้างบิลด์ที่ทำซ้ำได้และเพื่อลดปัญหาความไม่เข้ากัน ระหว่าง NDK เวอร์ชันต่างๆ กับปลั๊กอิน Android Gradle ได้

ดูข้อมูลเพิ่มเติมได้ที่ติดตั้งและกำหนดค่า NDK, CMake และ LLDB

การสนับสนุน ChromeOS

ตอนนี้ Android Studio รองรับอุปกรณ์ ChromeOS อย่างเป็นทางการแล้ว เช่น HP Chromebook x360 14, Acer Chromebook 13/Spin 13 และอื่นๆ ที่คุณอ่านได้ ในข้อกำหนดของระบบ หากต้องการเริ่มต้นใช้งาน ให้ดาวน์โหลด Android Studio ในอุปกรณ์ ChromeOS ที่รองรับ แล้วทำตามวิธีการติดตั้ง

หมายเหตุ: ขณะนี้ Android Studio ใน ChromeOS รองรับการติดตั้งใช้งานแอปกับ อุปกรณ์ฮาร์ดแวร์ที่เชื่อมต่อเท่านั้น ดูข้อมูลเพิ่มเติมได้ที่ เรียกใช้แอปในอุปกรณ์ ฮาร์ดแวร์

การนำส่งตามเงื่อนไขสำหรับโมดูลฟีเจอร์

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

ปัจจุบันกลไกการนำส่งนี้รองรับการควบคุมการดาวน์โหลดโมดูล ในเวลาที่ติดตั้งแอปตามการกำหนดค่าอุปกรณ์ต่อไปนี้

  • ฟีเจอร์ฮาร์ดแวร์และซอฟต์แวร์ของอุปกรณ์ รวมถึงเวอร์ชัน OpenGL ES
  • ประเทศของผู้ใช้
  • ระดับ API

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

IntelliJ IDEA 2019.1

เราได้อัปเดต IDE หลักของ Android Studio ด้วยการปรับปรุงจาก IntelliJ IDEA ผ่านรุ่น 2019.1 เช่น การปรับแต่งธีม

IntelliJ เวอร์ชันล่าสุดที่รวมอยู่ใน Android Studio คือ 2018.3.4 ดูข้อมูลเพิ่มเติมเกี่ยวกับการปรับปรุงจาก IntelliJ เวอร์ชันอื่นๆ ซึ่งรวมอยู่ในการเปิดตัว Android Studio เวอร์ชันนี้ได้ที่ การอัปเดตการแก้ไขข้อบกพร่องต่อไปนี้

การอัปเดตปลั๊กอิน Android Gradle 3.5.0

ดูข้อมูลเกี่ยวกับฟีเจอร์ใหม่ในปลั๊กอิน Android Gradle 3.5.0 เช่น การรองรับการประมวลผลคำอธิบายประกอบแบบเพิ่มทีละรายการและการทดสอบหน่วยที่แคชได้ที่หมายเหตุประจำรุ่น

ผู้ร่วมให้ข้อมูลในชุมชน

ขอขอบคุณผู้มีส่วนร่วมในชุมชนทุกท่านที่ช่วยเราค้นพบข้อบกพร่อง และวิธีอื่นๆ ในการปรับปรุง Android Studio 3.5 โดยเฉพาะอย่างยิ่ง เราขอขอบคุณบุคคลต่อไปนี้ที่รายงานข้อบกพร่องระดับ P0 และ P1