Android Studio 3.3 (มกราคม 2019)

Android Studio 3.3 เป็นรุ่นหลักที่มีฟีเจอร์ใหม่ และการปรับปรุงต่างๆ มากมาย

3.3.2 (มีนาคม 2019)

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

3.3.1 (กุมภาพันธ์ 2019)

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

IntelliJ IDEA 2018.2.2

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

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

ดูข้อมูลเกี่ยวกับฟีเจอร์ใหม่ในปลั๊กอิน Android Gradle ได้ที่ บันทึกประจำรุ่น

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

ดูข้อมูลเพิ่มเติมได้ที่ หัวข้อใช้การนำทางด้วยคอมโพเนนต์สถาปัตยกรรมการนำทาง

ลบไดเรกทอรี Android Studio ที่ไม่ได้ใช้

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

ไดเรกทอรีที่ Android Studio พิจารณาที่จะลบมีดังนี้

  • Linux: ~/.AndroidStudio[Preview]X.Y
  • Mac: ~/Library/{Preferences, Caches, Logs, Application Support}/AndroidStudio[Preview]X.Y
  • Windows: %USER%.AndroidStudio[Preview]X.Y

การปรับปรุงเครื่องมือวิเคราะห์ซอร์สโค้ด

เครื่องมือวิเคราะห์ซอร์สโค้ดเมื่อเรียกใช้จาก Gradle จะทำงานได้เร็วขึ้นอย่างมาก โดยโปรเจ็กต์ขนาดใหญ่จะ เห็นว่าเครื่องมือวิเคราะห์ซอร์สโค้ดทำงานได้เร็วขึ้นถึง 4 เท่า

วิซาร์ดสร้างโปรเจ็กต์ใหม่

วิซาร์ดสร้างโปรเจ็กต์ใหม่ มีรูปลักษณ์ใหม่และมีการอัปเดตที่จะช่วย ปรับปรุงกระบวนการสร้างโปรเจ็กต์ Android Studio ใหม่

ดูข้อมูลเพิ่มเติมได้ที่หัวข้อสร้างโปรเจ็กต์

การอัปเดต Profiler

Android Studio 3.3 มีการอัปเดต Profiler แต่ละรายการหลายรายการ

ประสิทธิภาพที่เพิ่มขึ้น

ประสิทธิภาพการแสดงผลขณะใช้ Profiler ได้รับการปรับปรุงอย่างมาก ตามความคิดเห็นของผู้ใช้ โปรดส่งความคิดเห็นต่อไป , โดยเฉพาะอย่างยิ่งหากคุณยังคงพบปัญหาด้านประสิทธิภาพ

ตัวเลือกการติดตามการจัดสรรหน่วยความจำของ Profiler

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

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

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

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

  • ปิด: ปิดการจัดสรรหน่วยความจำ โหมดนี้จะเปิดใช้โดยอัตโนมัติขณะบันทึก CPU (หากยังไม่ได้เลือก) แล้วกลับไปใช้การตั้งค่าก่อนหน้าเมื่อการบันทึกเสร็จสิ้น คุณเปลี่ยนลักษณะการทำงานนี้ได้ในกล่องโต้ตอบการกำหนดค่าการบันทึก CPU

    การติดตามจะส่งผลต่อทั้งออบเจ็กต์ Java และการอ้างอิง JNI

ตรวจสอบข้อมูลการแสดงผลเฟรม

ใน เครื่องมือสร้างโปรไฟล์ CPU ตอนนี้คุณสามารถตรวจสอบระยะเวลาที่แอป Java ใช้ในการแสดงผลแต่ละเฟรมในเธรด UI หลักและ RenderThread ข้อมูลนี้อาจมีประโยชน์เมื่อตรวจสอบคอขวดที่ ทำให้ UI กระตุกและอัตราเฟรมต่ำ ตัวอย่างเช่น เฟรมแต่ละเฟรมที่ใช้เวลานานกว่า 16 มิลลิวินาทีที่จำเป็นในการรักษาอัตราเฟรมที่ราบรื่นจะแสดงเป็นสีแดง

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

ดูข้อมูลเพิ่มเติมเกี่ยวกับการตรวจสอบและแก้ไขปัญหาอัตราเฟรมได้ที่หัวข้อ การแสดงผลช้า

Fragment ในไทม์ไลน์เหตุการณ์

ตอนนี้ไทม์ไลน์เหตุการณ์จะแสดงเวลาที่ Fragment แนบและแยกออก นอกจากนี้ เมื่อวางเมาส์เหนือ Fragment ทูลทิปจะแสดงสถานะของ Fragment

ดูข้อความที่จัดรูปแบบแล้วสำหรับเพย์โหลดการเชื่อมต่อใน Network Profiler

ก่อนหน้านี้ Network Profiler จะแสดงเฉพาะข้อความดิบจากเพย์โหลดการเชื่อมต่อ ตอนนี้ Android Studio 3.3 จะจัดรูปแบบข้อความบางประเภทโดยค่าเริ่มต้น ซึ่งรวมถึง JSON, XML และ HTML ในแท็บการตอบกลับ และคำขอ ให้คลิก ลิงก์ดูการแยกวิเคราะห์ เพื่อแสดงข้อความที่จัดรูปแบบแล้ว และคลิก ลิงก์ดูซอร์ส เพื่อแสดงข้อความดิบ

ดูข้อมูลเพิ่มเติมได้ที่ ตรวจสอบการจราจรของข้อมูลในเครือข่ายด้วย Network Profiler

การดาวน์โหลดคอมโพเนนต์ SDK โดยอัตโนมัติ

เมื่อโปรเจ็กต์ต้องการคอมโพเนนต์ SDK จากแพลตฟอร์ม SDK, NDK หรือ CMake, ตอนนี้ Gradle จะพยายามดาวน์โหลดแพ็กเกจที่จำเป็นโดยอัตโนมัติ ตราบใดที่คุณยอมรับข้อตกลงการอนุญาตให้ใช้สิทธิที่เกี่ยวข้องก่อนหน้านี้โดยใช้เครื่องมือจัดการ SDK

ดูข้อมูลเพิ่มเติมได้ที่ หัวข้อดาวน์โหลดแพ็กเกจที่ขาดหายไปโดยอัตโนมัติด้วย Gradle

การรองรับ Clang-Tidy

ตอนนี้ Android Studio รองรับการวิเคราะห์โค้ดแบบคงที่โดยใช้ Clang-Tidy สำหรับโปรเจ็กต์ที่มี โค้ดแบบเนทีฟ หากต้องการเปิดใช้การรองรับ Clang-Tidy ให้อัปเดต NDK เป็น r18 ขึ้นไป

จากนั้นคุณจะเปิดใช้หรือเปิดใช้การตรวจสอบอีกครั้งได้โดยเปิดกล่องโต้ตอบการตั้งค่า หรือ ค่ากำหนด แล้วไปที่ เครื่องมือแก้ไข > การตรวจสอบ > C/C++ > ทั่วไป > Clang-Tidy เมื่อเลือกการตรวจสอบนี้ในกล่องโต้ตอบการตั้งค่า หรือค่ากำหนด คุณจะเห็นรายการการตรวจสอบ Clang-Tidy ที่เปิดและปิดใช้ในส่วนตัวเลือก ของแผงด้านขวาสุด หากต้องการเปิดใช้ การตรวจสอบเพิ่มเติม, ให้เพิ่มการตรวจสอบลงในรายการแล้วคลิก ใช้

หากต้องการกำหนดค่า Clang-Tidy ด้วย ตัวเลือกเพิ่มเติม, ให้คลิก กำหนดค่าตัวเลือกการตรวจสอบ Clang-Tidy แล้วเพิ่มตัวเลือกในกล่องโต้ตอบที่ เปิดขึ้น

การนำตัวเลือกสำหรับการปรับแต่ง C++ ออก

ตัวเลือกต่อไปนี้ถูกนำออกจากปรับแต่งการรองรับ C++ กล่องโต้ตอบ:

  • การรองรับข้อยกเว้น (-fexceptions)
  • การรองรับข้อมูลประเภทรันไทม์ (-ftti)

ระบบจะเปิดใช้ลักษณะการทำงานที่เกี่ยวข้องสำหรับโปรเจ็กต์ทั้งหมดที่สร้างผ่าน Android Studio

CMake เวอร์ชัน 3.10.2

ตอนนี้ CMake เวอร์ชัน 3.10.2 รวมอยู่ในเครื่องมือจัดการ SDK แล้ว โปรดทราบว่า Gradle ยังคง ใช้เวอร์ชัน 3.6.0 โดยค่าเริ่มต้น

หากต้องการระบุเวอร์ชัน CMake ที่ Gradle จะใช้ ให้เพิ่มโค้ดต่อไปนี้ลงในไฟล์ build.gradle ของโมดูล

    android {
        ...
        externalNativeBuild {
            cmake {
                ...
                version "3.10.2"
            }
        }
    }
    
  

ดูข้อมูลเพิ่มเติมเกี่ยวกับการกำหนดค่า CMake ใน build.gradle ได้ที่ กำหนดค่า Gradle ด้วยตนเอง

ไวยากรณ์ "+" ใหม่เพื่อระบุเวอร์ชัน CMake ขั้นต่ำ

เมื่อระบุเวอร์ชัน CMake ในไฟล์ build.gradle ของโมดูลหลัก ตอนนี้คุณสามารถเพิ่ม "+" เพื่อให้ตรงกับลักษณะการทำงานของคำสั่ง cmake_minimum_required() ของ CMake

ข้อควรระวัง: ไม่แนะนำให้ใช้ไวยากรณ์ "+" กับ การขึ้นอยู่กับบิลด์ อื่นๆ เนื่องจากความขึ้นอยู่แบบไดนามิกอาจทำให้เกิดการอัปเดตเวอร์ชันที่ไม่คาดคิดและ แก้ไขความแตกต่างของเวอร์ชันได้ยาก

ตอนนี้ Android App Bundle รองรับ Instant Apps แล้ว

ตอนนี้ Android Studio ช่วยให้คุณสร้าง Android App Bundle ที่ รองรับ Google Play Instant อย่างเต็มรูปแบบ กล่าวคือ ตอนนี้คุณสามารถสร้างและทำให้ใช้งานได้ทั้ง Installed App และประสบการณ์แบบใช้งานได้ทันทีจากโปรเจ็กต์ Android Studio เดียว และรวมไว้ใน Android App Bundle เดียวได้

หากกำลังสร้างโปรเจ็กต์ Android Studio ใหม่โดยใช้กล่องโต้ตอบสร้างโปรเจ็กต์ใหม่ ให้เลือกช่องข้าง กำหนดค่าโปรเจ็กต์ > โปรเจ็กต์นี้จะรองรับ Instant Apps จากนั้น Android Studio จะสร้างโปรเจ็กต์แอปใหม่ตามปกติ แต่จะรวมพร็อพเพอร์ตี้ต่อไปนี้ไว้ในไฟล์ Manifest เพื่อเพิ่มการรองรับ Instant Apps ลงในโมดูลฐานของแอป

    <manifest ... xmlns:dist="http://schemas.android.com/apk/distribution">
        <dist:module dist:instant="true" />
        ...
    </manifest>
    
  

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

หากต้องการติดตั้งใช้งานแอปในอุปกรณ์ในเครื่องเป็นประสบการณ์แบบใช้งานได้ทันที ให้แก้ไขการกำหนดค่าการเรียกใช้แล้วเลือก ช่องข้าง ทั่วไป > ติดตั้งใช้งานเป็น Instant App

การซิงค์โปรเจ็กต์แบบตัวแปรเดียว

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

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

หากต้องการเปิดใช้การเพิ่มประสิทธิภาพนี้ด้วยตนเอง ให้คลิก ไฟล์ > การตั้งค่า > ทดลอง > Gradle (Android Studio > ค่ากำหนด > ทดลอง > Gradle ใน Mac) แล้วเลือก ช่องทำเครื่องหมายซิงค์เฉพาะตัวแปรที่ใช้งานอยู่

หมายเหตุ: ปัจจุบันการเพิ่มประสิทธิภาพนี้รองรับโปรเจ็กต์ที่มีเฉพาะภาษาโปรแกรม Java เช่น หาก IDE ตรวจพบโค้ด Kotlin หรือ C++ ใน โปรเจ็กต์ ระบบจะไม่เปิดใช้การเพิ่มประสิทธิภาพนี้โดยอัตโนมัติ และคุณไม่ควร เปิดใช้ด้วยตนเอง

ดูข้อมูลเพิ่มเติมได้ที่ หัวข้อเปิดใช้การซิงค์โปรเจ็กต์แบบตัวแปรเดียว

แสดงความคิดเห็นอย่างรวดเร็ว

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

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

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