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 และเดรัม Kotlin คุณสามารถยอมรับการตั้งค่าที่แนะนำได้โดยคลิกลิงก์การดำเนินการในการแจ้งเตือน หรือจะปรับการตั้งค่าเหล่านี้ด้วยตนเองโดยเลือกไฟล์ > การตั้งค่า (หรือAndroid Studio > ค่ากําหนดใน macOS) จากนั้นค้นหาส่วนการตั้งค่าหน่วยความจําในส่วนลักษณะที่ปรากฏและลักษณะการทํางาน > การตั้งค่าระบบ ดูข้อมูลเพิ่มเติมได้ที่ขนาดฮีปสูงสุด

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

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

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

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

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

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

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

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

Project Marble: ขัดเกลาฟีเจอร์

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

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

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

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

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

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

ขั้นตอนการทำให้แอปใช้งานได้

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

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

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

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

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

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

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

  • การคอมไพล์และการลิงก์ AAPT
  • R8 และ ProGuard
  • การค้นหา
  • การรวมทรัพยากร
  • การแยกวิเคราะห์ไฟล์ 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 ค้างไว้และวางเมาส์เหนือแท็ก Anchor ข้อจำกัดที่เกี่ยวข้องใดๆ ก็ตามที่เกี่ยวข้องจะเปลี่ยนเป็นสีแดงเพื่อระบุว่าคลิกเพื่อลบได้

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

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

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

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

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

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

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

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

นอกจากการอัปเดตข้างต้นแล้ว Android Studio 3.5 ยังมีข้อปรับปรุงต่อไปนี้ในเครื่องมือแก้ไขเลย์เอาต์

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

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

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

นอกจากการรองรับการประมวลผลคำอธิบายประกอบเพิ่มเติมสำหรับการเชื่อมโยงข้อมูลแล้ว 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 ได้ด้วย

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

แผงสร้างตัวแปรที่แสดงการเลือกตัวแปรเดียวตาม 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 รองรับการติดตั้งใช้งานแอปในอุปกรณ์ฮาร์ดแวร์ที่เชื่อมต่อเท่านั้น อ่านข้อมูลเพิ่มเติมได้ในหัวข้อเรียกใช้แอปในอุปกรณ์ฮาร์ดแวร์

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

การนำส่งแบบมีเงื่อนไขช่วยให้คุณกำหนดข้อกำหนดในการกำหนดค่าอุปกรณ์บางอย่างเพื่อให้ระบบดาวน์โหลดโมดูลฟีเจอร์โดยอัตโนมัติระหว่างการติดตั้งแอปได้ เช่น คุณอาจกำหนดค่าโมดูลฟีเจอร์ที่มีฟังก์ชันการทำงานสำหรับ Augmented Reality (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