Android Studio 3.2 (กันยายน 2018)
Android Studio 3.2 เป็นรุ่นที่สำคัญซึ่งมีฟีเจอร์ใหม่ๆ และการปรับปรุงมากมาย
3.2.1 (ตุลาคม 2018)
การอัปเดต Android Studio 3.2 นี้มีการเปลี่ยนแปลงและการแก้ไขต่อไปนี้
- ตอนนี้ Kotlin เวอร์ชันที่รวมไว้คือ 1.2.71
- ตอนนี้เวอร์ชันเครื่องมือบิลด์เริ่มต้นคือ 28.0.3
- ในไลบรารีการนำทาง เราได้เปลี่ยนชื่อประเภทอาร์กิวเมนต์จาก
type
เป็นargType
- เราได้แก้ไขข้อบกพร่องต่อไปนี้แล้ว
- เมื่อใช้ไลบรารีการเชื่อมโยงข้อมูล ชื่อตัวแปรที่มีขีดล่าง ทำให้เกิดข้อผิดพลาดในการคอมไพล์
- CMake ทำให้ IntelliSense และฟีเจอร์อื่นๆ ของ CLion ทำงานไม่สำเร็จ
- การเพิ่ม
SliceProvider
ทำให้เกิดข้อผิดพลาดในการคอมไพล์ ในโปรเจ็กต์ที่ไม่ได้ใช้ไลบรารีandroidx.*
- ไม่ได้เรียกใช้การทดสอบหน่วย Kotlin บางรายการ
- ปัญหาเกี่ยวกับการเชื่อมโยงข้อมูลทำให้เกิด
PsiInvalidElementAccessException
<merge>
บางครั้งทำให้ Layout Editor ขัดข้อง
ปัญหาที่ทราบในเวอร์ชัน 3.2.0
หมายเหตุ: ปัญหาเหล่านี้ได้รับการแก้ไขแล้วใน Android Studio 3.2.1
เราไม่แนะนำอย่างยิ่งให้ใช้ Kotlin เวอร์ชัน 1.2.70
Kotlin เวอร์ชัน 1.2.61 แก้ไขข้อบกพร่องที่อาจทำให้ Android Studio ค้าง แต่ Kotlin 1.2.70 ไม่มีการแก้ไขนี้
แต่ Kotlin เวอร์ชัน 1.2.71 ขึ้นไปมีการแก้ไขนี้
-
แม้ว่าโดยปกติแล้วคุณไม่จำเป็นต้องระบุเวอร์ชันเครื่องมือสร้าง แต่เมื่อใช้ปลั๊กอิน Android Gradle 3.2.0 กับ
renderscriptSupportModeEnabled
ที่ตั้งค่าเป็นtrue
คุณ จะต้องรวมข้อมูลต่อไปนี้ไว้ในไฟล์build.gradle
ของแต่ละโมดูลandroid.buildToolsVersion "28.0.3"
ผู้ช่วย "มีอะไรใหม่"
ผู้ช่วยคนใหม่จะแจ้งให้คุณทราบเกี่ยวกับการเปลี่ยนแปลงล่าสุดใน Android Studio
ผู้ช่วยจะเปิดขึ้นเมื่อคุณเริ่ม Android Studio หลังจากการติดตั้งใหม่หรือ อัปเดต หากตรวจพบว่ามีข้อมูลใหม่ที่ต้องแสดง นอกจากนี้ คุณยังเปิด ผู้ช่วยได้โดยเลือกความช่วยเหลือ > มีอะไรใหม่ใน Android Studio
Android Jetpack
Android Jetpack ช่วยเร่งการพัฒนา Android ด้วยคอมโพเนนต์ เครื่องมือ และคำแนะนำที่ช่วยขจัดงานที่ต้องทำซ้ำๆ และช่วยให้คุณสร้างแอปคุณภาพสูงที่ทดสอบได้ง่ายและเร็วขึ้น Android Studio มีการอัปเดตต่อไปนี้ เพื่อรองรับ Jetpack ดูข้อมูลเพิ่มเติมได้ในเอกสารประกอบของ Jetpack
เครื่องมือแก้ไขการนำทาง
Navigation Editor ใหม่ผสานรวมกับคอมโพเนนต์การนำทางของ Android Jetpack เพื่อให้มุมมองแบบกราฟิกสำหรับการสร้างโครงสร้างการนำทางของ แอปของคุณ Navigation Editor ช่วยลดความซับซ้อนในการออกแบบและการติดตั้งใช้งาน การนำทางระหว่างปลายทางในแอป
ใน Android Studio 3.2 เครื่องมือแก้ไขการนำทางเป็นฟีเจอร์ทดลอง หากต้องการ เปิดใช้เครื่องมือแก้ไขการนำทาง ให้คลิกไฟล์ > การตั้งค่า (Android Studio > ค่ากำหนดใน Mac) เลือกหมวดหมู่ทดลอง ในแผงด้านซ้าย เลือกช่องข้างเปิดใช้เครื่องมือแก้ไขการนำทาง แล้ว รีสตาร์ท Android Studio
ดูข้อมูลเพิ่มเติมได้ใน เอกสารประกอบของตัวแก้ไขการนำทาง
การย้ายข้อมูล AndroidX
เรากำลังย้ายข้อมูลไลบรารีการสนับสนุน Android ไปยังไลบรารีส่วนขยาย Android ใหม่โดยใช้เนมสเปซ androidx
ซึ่งเป็นส่วนหนึ่งของ Jetpack ดูข้อมูลเพิ่มเติมได้ที่ภาพรวมของ AndroidX
Android Studio 3.2 จะช่วยคุณในกระบวนการนี้ด้วยฟีเจอร์การย้ายข้อมูลใหม่
หากต้องการย้ายข้อมูลโปรเจ็กต์ที่มีอยู่ไปยัง AndroidX ให้เลือกจัดระเบียบใหม่ > ย้ายข้อมูลไปยัง AndroidX หากคุณมีการขึ้นต่อกันของ Maven ที่ยังไม่ได้ย้ายข้อมูลไปยังเนมสเปซ AndroidX ระบบบิลด์ของ Android Studio จะแปลงการขึ้นต่อกันของโปรเจ็กต์เหล่านั้นโดยอัตโนมัติด้วย
ปลั๊กอิน Android Gradle มีแฟล็กส่วนกลางต่อไปนี้ที่คุณตั้งค่าได้
ในไฟล์ gradle.properties
android.useAndroidX
: เมื่อตั้งค่าเป็นtrue
แฟล็กนี้ จะบ่งชี้ว่าคุณต้องการเริ่มใช้ AndroidX ตั้งแต่นี้เป็นต้นไป หากไม่มีแฟล็ก Android Studio จะทำงานเสมือนว่าตั้งค่าแฟล็กเป็นfalse
android.enableJetifier
: เมื่อตั้งค่าเป็นtrue
แฟล็กนี้จะระบุว่าคุณต้องการให้มีการรองรับเครื่องมือ (จากปลั๊กอิน Android Gradle) เพื่อแปลงไลบรารีของบุคคลที่สามที่มีอยู่โดยอัตโนมัติราวกับว่าไลบรารีเหล่านั้นเขียนขึ้นสำหรับ AndroidX หากไม่มีแฟล็ก Android Studio จะทำงานเสมือนว่า ตั้งค่าแฟล็กเป็นfalse
ระบบจะตั้งค่าทั้ง 2 แฟล็กเป็น true
เมื่อคุณใช้คำสั่ง
ย้ายข้อมูลไปยัง AndroidX
หากต้องการเริ่มใช้ไลบรารี AndroidX ทันทีและไม่จำเป็นต้อง
แปลงไลบรารีของบุคคลที่สามที่มีอยู่ คุณสามารถตั้งค่า
ฟีเจอร์แฟล็ก android.useAndroidX
เป็น true
และ
ฟีเจอร์แฟล็ก android.enableJetifier
เป็น false
Android App Bundle
Android App Bundle เป็นรูปแบบการอัปโหลดใหม่ที่มีโค้ดและทรัพยากรที่คอมไพล์แล้วทั้งหมดของแอป แต่จะเลื่อนการสร้างและการลงนาม APK ไปยัง Google Play Store
จากนั้นโมเดลการนำส่งแอปแบบใหม่ของ Google Play จะใช้ App Bundle เพื่อสร้างและนำส่ง APK ที่เพิ่มประสิทธิภาพสำหรับการกำหนดค่าอุปกรณ์ของผู้ใช้แต่ละราย เพื่อให้ผู้ใช้แต่ละรายดาวน์โหลดเฉพาะโค้ดและทรัพยากรที่จำเป็นในการเรียกใช้แอปของคุณเท่านั้น คุณจึงไม่ต้องสร้าง ทำ Signing และจัดการ APK หลายรายการอีกต่อไป และผู้ใช้จะได้รับการดาวน์โหลดที่มีขนาดเล็กลงและเพิ่มประสิทธิภาพมากขึ้น
นอกจากนี้ คุณยังเพิ่มโมดูลฟีเจอร์ลงในโปรเจ็กต์แอปและ รวมไว้ใน App Bundle ได้ด้วย จากนั้นผู้ใช้จะ ดาวน์โหลดและติดตั้งฟีเจอร์ของแอปได้ตามต้องการ
หากต้องการสร้างแพ็กเกจ ให้เลือกสร้าง > สร้างแพ็กเกจ/APK > สร้างแพ็กเกจ
ดูข้อมูลเพิ่มเติม รวมถึงวิธีการสร้างและวิเคราะห์ Android App Bundle ได้ที่ Android App Bundle
ข้อมูลตัวอย่างในเครื่องมือแก้ไขเลย์เอาต์
เลย์เอาต์ Android หลายรายการมีข้อมูลรันไทม์ที่อาจทำให้การแสดงภาพ
รูปลักษณ์และความรู้สึกของเลย์เอาต์ในระหว่างขั้นตอนการออกแบบของการพัฒนาแอปเป็นเรื่องยาก ตอนนี้คุณดูตัวอย่างมุมมองในเครื่องมือแก้ไขเลย์เอาต์ที่เติมข้อมูลตัวอย่างได้อย่างง่ายดายแล้ว เมื่อเพิ่มมุมมอง ปุ่ม
จะปรากฏใต้มุมมองในหน้าต่างการออกแบบ คลิกปุ่มนี้เพื่อตั้งค่า
แอตทริบิวต์มุมมองขณะออกแบบ คุณเลือกได้
จากเทมเพลตข้อมูลตัวอย่างที่หลากหลาย และระบุจำนวนรายการตัวอย่าง
ที่จะใช้เพื่อป้อนข้อมูลในมุมมอง
หากต้องการลองใช้ข้อมูลตัวอย่าง ให้เพิ่ม
RecyclerView
ลงในเลย์เอาต์ใหม่ คลิกปุ่มแอตทริบิวต์ขณะออกแบบ
ใต้มุมมอง แล้วเลือกจากภาพสไลด์ของเทมเพลตข้อมูลตัวอย่าง
Slice
Slice เป็นวิธีใหม่ในการฝังฟังก์ชันการทำงานบางส่วนของแอปใน อินเทอร์เฟซผู้ใช้อื่นๆ บน Android ตัวอย่างเช่น Slice ช่วยให้แสดงฟังก์ชันการทำงานและเนื้อหาของแอปในคำแนะนำของ Google Search ได้
Android Studio 3.2 มีเทมเพลตในตัวที่จะช่วยคุณขยายแอปด้วย Slice Provider API ใหม่ รวมถึงการตรวจสอบ Lint ใหม่เพื่อให้แน่ใจว่าคุณ ทำตามแนวทางปฏิบัติแนะนำเมื่อสร้าง Slice
หากต้องการเริ่มต้นใช้งาน ให้คลิกขวาที่โฟลเดอร์โปรเจ็กต์ แล้วเลือก ใหม่ > อื่นๆ > ผู้ให้บริการ Slice
ดูข้อมูลเพิ่มเติม รวมถึงวิธีทดสอบการโต้ตอบของ Slice ได้ที่คู่มือเริ่มต้นใช้งาน Slice
Kotlin 1.2.61
Android Studio 3.2 มาพร้อมกับ Kotlin 1.2.61 และ Android SDK ใหม่ที่ผสานรวม กับ Kotlin ได้ดียิ่งขึ้น ดูข้อมูลเพิ่มเติมได้ที่ บล็อกของนักพัฒนาแอป Android
IntelliJ IDEA 2018.1.6
เราได้อัปเดต IDE หลักของ Android Studio ด้วยการปรับปรุงจาก IntelliJ IDEA ผ่านรุ่น 2018.1.6
โปรไฟล์เลอร์ Android
ลองใช้ฟีเจอร์ใหม่ต่อไปนี้ของ Android Profiler ใน Android Studio 3.2
เซสชัน
ตอนนี้คุณสามารถบันทึกข้อมูล Profiler เป็นเซสชันเพื่อกลับมาดูและตรวจสอบในภายหลังได้แล้ว Profiler จะเก็บข้อมูลเซสชันไว้จนกว่าคุณจะรีสตาร์ท IDE
เมื่อ บันทึกการติดตามเมธอดหรือ บันทึก Heap Dump IDE จะเพิ่มข้อมูลดังกล่าว (พร้อมกับกิจกรรมเครือข่ายของแอป) เป็นรายการแยกต่างหากในเซสชันปัจจุบัน และคุณสามารถสลับไปมาระหว่างการบันทึกเพื่อเปรียบเทียบข้อมูลได้อย่างง่ายดาย
การติดตามของระบบ
ใน CPU Profiler ให้เลือกการกำหนดค่าการติดตามระบบใหม่เพื่อตรวจสอบ CPU ของระบบและ
กิจกรรมของเธรดในอุปกรณ์ การกำหนดค่าการติดตามนี้สร้างขึ้นบน
systrace
และมีประโยชน์ในการตรวจสอบปัญหาในระดับระบบ เช่น UI ที่กระตุก
ขณะใช้การกำหนดค่าการติดตามนี้ คุณจะทำเครื่องหมายรูทีนโค้ดที่สำคัญในไทม์ไลน์ของโปรไฟล์เลอร์ได้ด้วยการเพิ่มเครื่องมือลงในโค้ด C/C++ ด้วย Native Tracing API หรือเพิ่มเครื่องมือลงในโค้ด Java ด้วยคลาส Trace
ตรวจสอบการอ้างอิง JNI ใน Memory Profiler
หากคุณติดตั้งใช้งานแอปในอุปกรณ์ที่ใช้ Android 8.0 (API ระดับ 26) ขึ้นไป ตอนนี้คุณสามารถตรวจสอบการจัดสรรหน่วยความจำสำหรับโค้ด JNI ของแอปได้โดยใช้ Memory Profiler
ขณะที่แอปทำงานอยู่ ให้เลือกส่วนของไทม์ไลน์ที่ต้องการตรวจสอบ แล้วเลือกฮีป JNI จากเมนูแบบเลื่อนลงเหนือรายการคลาส ดังที่แสดงด้านล่าง จากนั้นคุณจะตรวจสอบออบเจ็กต์ในฮีปได้ตามปกติ และ ดับเบิลคลิกออบเจ็กต์ในแท็บสแต็กการเรียกการจัดสรรเพื่อดูว่ามีการจัดสรรและ ปล่อยการอ้างอิง JNI ในโค้ดของคุณที่ใด

นำเข้า ส่งออก และตรวจสอบไฟล์ฮีปดัมป์ของหน่วยความจำ
ตอนนี้คุณสามารถนำเข้า ส่งออก และตรวจสอบ.hprof
ไฟล์การทิ้งฮีปหน่วยความจำที่สร้างขึ้น
ด้วยเครื่องมือสร้างโปรไฟล์หน่วยความจำได้แล้ว
นำเข้าไฟล์ .hprof
โดยคลิกเริ่มเซสชัน Profiler ใหม่
ในบานหน้าต่างเซสชันของ
Profiler แล้วเลือกโหลดจากไฟล์ จากนั้นคุณจะ
ตรวจสอบข้อมูลใน Memory Profiler ได้เช่นเดียวกับการตรวจสอบ Heap Dump อื่นๆ
หากต้องการบันทึกข้อมูล Heap Dump เพื่อตรวจสอบในภายหลัง ให้ใช้ปุ่มส่งออก Heap Dump ที่ด้านขวาของรายการ Heap Dump ในบานหน้าต่างเซสชัน ในกล่องโต้ตอบส่งออกเป็นที่ปรากฏขึ้น ให้บันทึกไฟล์ด้วยนามสกุล.hprof
ชื่อไฟล์
บันทึกกิจกรรมของ CPU ระหว่างการเริ่มต้นแอป
ตอนนี้คุณบันทึกกิจกรรม CPU ในระหว่างการเริ่มต้นแอปได้แล้ว โดยทำดังนี้
- เลือกเรียกใช้ > แก้ไขการกำหนดค่าจากเมนูหลัก
- ในแท็บการสร้างโปรไฟล์ของการกำหนดค่าการเรียกใช้ที่ต้องการ ให้เลือกช่อง ข้างเริ่มบันทึกการติดตามเมธอดเมื่อเริ่มต้น
- เลือกการกำหนดค่าการบันทึก CPU ที่จะใช้จากเมนูแบบเลื่อนลง
- ติดตั้งใช้งานแอปในอุปกรณ์ที่ใช้ Android 8.0 (API ระดับ 26) ขึ้นไปโดยเลือกเรียกใช้ > โปรไฟล์
ส่งออกการติดตาม CPU
หลังจากบันทึกกิจกรรมของ CPU ด้วย CPU Profiler แล้ว คุณจะส่งออกข้อมูลเป็นไฟล์
.trace
เพื่อแชร์กับผู้อื่นหรือตรวจสอบในภายหลังได้
หากต้องการส่งออกการติดตามหลังจากบันทึกกิจกรรมของ CPU แล้ว ให้ทำดังนี้
- คลิกขวาที่การบันทึกที่ต้องการส่งออกจากไทม์ไลน์ CPU
- เลือกส่งออกการติดตามจากเมนูแบบเลื่อนลง
- ไปที่ตำแหน่งที่ต้องการบันทึกไฟล์แล้วคลิกบันทึก
นำเข้าและตรวจสอบไฟล์การติดตาม CPU
ตอนนี้คุณสามารถนำเข้าและตรวจสอบไฟล์ .trace
ที่สร้างด้วย
Debug API หรือ
CPU Profiler ได้แล้ว (ปัจจุบันคุณ
ไม่สามารถนำเข้าการบันทึกการติดตามระบบได้)
นำเข้าไฟล์การติดตามโดยคลิกเริ่มเซสชัน Profiler ใหม่
ในบานหน้าต่างเซสชันของ
Profiler แล้วเลือกโหลดจากไฟล์ จากนั้นคุณจะ
ตรวจสอบข้อมูลใน CPU Profiler ได้เช่นเดียวกับที่ทำตามปกติ โดยมีข้อยกเว้น
ต่อไปนี้
- กิจกรรมของ CPU จะไม่แสดงตามไทม์ไลน์ของ CPU
- ไทม์ไลน์กิจกรรมของเธรดจะระบุเฉพาะตำแหน่งที่มีข้อมูลการติดตามสำหรับ แต่ละเธรด และไม่ใช่สถานะจริงของเธรด (เช่น กำลังทำงาน รอ หรือ หยุดทำงาน)
บันทึกกิจกรรม CPU โดยใช้ Debug API
ตอนนี้คุณเริ่มและหยุดบันทึกกิจกรรมของ CPU ใน CPU Profiler ได้แล้วโดย
ใช้เครื่องมือในแอปด้วย Debug API หลังจาก
คุณติดตั้งใช้งานแอปในอุปกรณ์แล้ว โปรไฟล์เลอร์จะเริ่มบันทึกกิจกรรมของ CPU โดยอัตโนมัติ
เมื่อแอปเรียกใช้
startMethodTracing(String tracePath)
และโปรไฟล์เลอร์จะหยุดบันทึกเมื่อแอปเรียกใช้
stopMethodTracing()
ขณะ
บันทึกกิจกรรม CPU ที่ทริกเกอร์โดยใช้ API นี้ โปรแกรมสร้างโปรไฟล์ CPU จะแสดง
Debug API เป็นการกำหนดค่าการบันทึก CPU ที่เลือก
Energy Profiler
โปรไฟล์พลังงานจะแสดงภาพการใช้งานพลังงานโดยประมาณของแอป รวมถึงเหตุการณ์ของระบบที่มีผลต่อการใช้งานพลังงาน เช่น Wakelock, Alarm และ Job
Energy Profiler จะปรากฏเป็นแถวใหม่ที่ด้านล่างของหน้าต่าง Profiler เมื่อคุณเรียกใช้แอปในอุปกรณ์ที่เชื่อมต่อหรือ Android Emulator ที่ใช้ Android 8.0 (API 26) ขึ้นไป
คลิกแถวพลังงานเพื่อขยายมุมมอง Energy Profiler วางเคอร์เซอร์เมาส์ เหนือแถบในไทม์ไลน์เพื่อดูรายละเอียดการใช้พลังงานตามทรัพยากร CPU, เครือข่าย และตำแหน่ง (GPS) รวมถึงเหตุการณ์ของระบบที่เกี่ยวข้อง
เหตุการณ์ของระบบที่มีผลต่อการใช้พลังงานจะแสดงในไทม์ไลน์ระบบ ด้านล่างไทม์ไลน์พลังงาน รายละเอียดของเหตุการณ์ระบบภายในช่วงเวลาที่ระบุจะแสดงในบานหน้าต่างเหตุการณ์เมื่อคุณเลือกช่วงเวลาในไทม์ไลน์พลังงาน
หากต้องการดูสแต็กการเรียกและรายละเอียดอื่นๆ สำหรับเหตุการณ์ของระบบ เช่น WakeLock ให้เลือกเหตุการณ์นั้นในบานหน้าต่างเหตุการณ์ หากต้องการไปที่โค้ดที่รับผิดชอบต่อเหตุการณ์ของระบบ ให้ดับเบิลคลิกรายการในสแต็กการเรียก
การตรวจสอบ Lint
Android Studio 3.2 มีฟีเจอร์ใหม่และฟีเจอร์ที่ได้รับการปรับปรุงมากมายสำหรับ การตรวจสอบด้วยเครื่องมือวิเคราะห์ซอร์สโค้ด
การตรวจสอบ Lint แบบใหม่จะช่วยคุณค้นหาและระบุปัญหาที่พบบ่อยในโค้ด ตั้งแต่คำเตือนเกี่ยวกับปัญหาด้านการใช้งานที่อาจเกิดขึ้นไปจนถึงข้อผิดพลาดที่มีลำดับความสำคัญสูงเกี่ยวกับช่องโหว่ด้านความปลอดภัยที่อาจเกิดขึ้น
Lint ตรวจสอบความสามารถในการทำงานร่วมกันของ Java/Kotlin
การตรวจสอบ Lint ใหม่จะบังคับใช้แนวทางปฏิบัติแนะนำที่อธิบายไว้ในคำแนะนำเกี่ยวกับการทำงานร่วมกันของ Kotlin เพื่อให้มั่นใจว่าโค้ด Java จะทำงานร่วมกับโค้ด Kotlin ได้อย่างราบรื่น ตัวอย่างของการตรวจสอบเหล่านี้ ได้แก่ การค้นหาการมีอยู่ของคำอธิบายประกอบ Nullability การใช้คีย์เวิร์ดที่ฮาร์ดโค้ดใน Kotlin และการวางพารามิเตอร์ Lambda ไว้สุดท้าย
หากต้องการเปิดใช้การตรวจสอบเหล่านี้ ให้คลิกไฟล์ > การตั้งค่า (Android Studio > ค่ากำหนด ใน Mac) เพื่อเปิดกล่องโต้ตอบการตั้งค่า จากนั้นไปที่ส่วน Editor > Inspections > Android > Lint > Interoperability > Kotlin Interoperability แล้วเลือกกฎที่ต้องการเปิดใช้

หากต้องการเปิดใช้การตรวจสอบเหล่านี้สำหรับการสร้างบรรทัดคำสั่ง ให้เพิ่มข้อมูลต่อไปนี้ลงใน
build.gradle
android {
lintOptions {
check 'Interoperability'
}
}
การตรวจสอบ Lint สำหรับ Slice
การตรวจสอบ Lint ใหม่สำหรับ Slice จะช่วยให้มั่นใจว่าคุณสร้าง Slice ได้อย่างถูกต้อง เช่น การตรวจสอบ Lint จะเตือนคุณหากไม่ได้กำหนดการดำเนินการหลัก ให้กับ Slice
เป้าหมาย Gradle ใหม่
ใช้lintFix
งาน Gradle ใหม่เพื่อใช้การแก้ไขที่ปลอดภัย
ทั้งหมดที่การตรวจสอบ Lint แนะนำกับซอร์สโค้ดโดยตรง ตัวอย่างการตรวจสอบ Lint ที่แนะนำวิธีแก้ไขที่ปลอดภัยให้ใช้คือ SyntheticAccessor
การอัปเดตข้อมูลเมตา
ข้อมูลเมตาต่างๆ เช่น การตรวจสอบการแคสต์บริการ ได้รับการอัปเดตเพื่อให้การตรวจสอบ Lint ทำงานกับ Android 9 (API ระดับ 28) ได้
คำเตือนหากเรียกใช้ Lint ในตัวแปรใหม่
ตอนนี้ Lint จะบันทึกตัวแปรและเวอร์ชันที่ใช้บันทึกเกณฑ์พื้นฐาน และจะ เตือนคุณหากเรียกใช้ในตัวแปรอื่นที่ไม่ใช่ตัวแปรที่ใช้สร้างเกณฑ์พื้นฐาน
การปรับปรุงการตรวจสอบ Lint ที่มีอยู่
Android Studio 3.2 มีการปรับปรุงการตรวจสอบด้วยเครื่องมือวิเคราะห์ซอร์สโค้ดที่มีอยู่หลายอย่าง ตัวอย่างเช่น การตรวจสอบวงจรทรัพยากรจะใช้กับทรัพยากรประเภทอื่นๆ และเครื่องมือตรวจหาการแปลจะค้นหาคำแปลที่ขาดหายไปได้ทันทีในเอดิเตอร์
ทำให้ค้นหารหัสปัญหาได้ง่ายขึ้น
ตอนนี้รหัสปัญหาจะแสดงในที่ต่างๆ มากขึ้น รวมถึงในหน้าต่างผลการตรวจสอบ ซึ่งจะช่วยให้คุณค้นหาข้อมูลที่จำเป็นในการเปิดหรือปิดใช้การตรวจสอบที่เฉพาะเจาะจงผ่าน lintOptions
ใน build.gradle
ได้ง่ายขึ้น
ดูข้อมูลเพิ่มเติมได้ที่ กำหนดค่าตัวเลือก Lint ด้วย Gradle
การเชื่อมโยงข้อมูล V2
ตอนนี้ระบบได้เปิดใช้ Data Binding V2 โดยค่าเริ่มต้นแล้ว และใช้ร่วมกับ V1 ได้ ซึ่งหมายความว่า หากคุณมีทรัพยากร Dependency ของไลบรารีที่คอมไพล์ด้วย V1 คุณจะใช้ ทรัพยากรเหล่านั้นกับโปรเจ็กต์ที่ใช้ Data Binding V2 ได้ อย่างไรก็ตาม โปรดทราบว่าโปรเจ็กต์ที่ใช้ V1 จะใช้ทรัพยากร Dependency ที่คอมไพล์ด้วย V2 ไม่ได้
การแปลง D8
ใน Android Studio 3.1 เราได้ผสานรวมขั้นตอนการยกเลิกการเพิ่มน้ำตาลลงในเครื่องมือ D8 เป็น ฟีเจอร์ทดลอง ซึ่งช่วยลดเวลาในการสร้างโดยรวม ใน Android Studio 3.2 การยกเลิกการเพิ่มน้ำตาลด้วย D8 จะเปิดอยู่โดยค่าเริ่มต้น
เครื่องมือลดขนาดโค้ดใหม่
R8 เป็นเครื่องมือใหม่สำหรับการย่อโค้ดและการปรับให้ยากต่อการอ่าน (Obfuscation) ซึ่งจะมาแทนที่ ProGuard คุณ
เริ่มใช้ R8 เวอร์ชันตัวอย่างได้โดยใส่ข้อมูลต่อไปนี้ในไฟล์ gradle.properties
ของโปรเจ็กต์
android.enableR8 = true
เปลี่ยน ABI เริ่มต้นสำหรับ APK หลายรายการ
เมื่อสร้าง APK หลายรายการที่
แต่ละรายการกำหนดเป้าหมายเป็น ABI ที่แตกต่างกัน ปลั๊กอินจะไม่สร้าง APK สำหรับ
ABI ต่อไปนี้โดยค่าเริ่มต้นอีกต่อไป ได้แก่ mips
, mips64
และ armeabi
หากต้องการสร้าง APK ที่กำหนดเป้าหมายเป็น ABI เหล่านี้ คุณต้องใช้
NDK r16b หรือต่ำกว่า และระบุ ABI
ในไฟล์ build.gradle
ดังที่แสดงด้านล่าง
splits { abi { include 'armeabi', 'mips', 'mips64' ... } }
splits { abi { include("armeabi", "mips", "mips64") ... } }
หมายเหตุ: การเปลี่ยนแปลงลักษณะการทำงานนี้รวมอยู่ใน Android Studio 3.1 RC1 และ สูงกว่าด้วย
ฟีเจอร์เครื่องมือแก้ไขที่ได้รับการปรับปรุงสำหรับไฟล์บิลด์ CMake
หากคุณใช้ CMake เพื่อ เพิ่มโค้ด C และ C++ ลงในโปรเจ็กต์ ตอนนี้ Android Studio มีฟีเจอร์ตัวแก้ไขที่ได้รับการปรับปรุงเพื่อช่วยคุณแก้ไข สคริปต์บิลด์ CMake เช่น รายการต่อไปนี้
- การไฮไลต์ไวยากรณ์และการเติมโค้ดอัตโนมัติ: ตอนนี้ IDE จะไฮไลต์และแนะนำการเติมโค้ดอัตโนมัติสำหรับคำสั่ง CMake ทั่วไป นอกจากนี้ คุณยังไปยังไฟล์ได้โดยคลิกไฟล์ขณะกด ปุ่มควบคุม (Command ใน Mac)
- การจัดรูปแบบโค้ดใหม่: ตอนนี้คุณสามารถใช้ตัวเลือกการจัดรูปแบบโค้ดใหม่ของ IntelliJ เพื่อ ใช้รูปแบบโค้ดกับสคริปต์บิลด์ CMake ได้แล้ว
- การปรับโครงสร้างโค้ดอย่างปลอดภัย: เครื่องมือการปรับโครงสร้างโค้ดในตัวของ IDE จะตรวจสอบด้วยว่าคุณเปลี่ยนชื่อหรือลบไฟล์ที่อ้างอิงในสคริปต์บิลด์ CMake หรือไม่
ไปยังไฟล์ส่วนหัวภายนอก
เมื่อใช้หน้าต่างโปรเจ็กต์ใน Android Studio เวอร์ชันก่อนหน้า คุณจะ ไปยังส่วนหัวของไฟล์ที่อยู่ในไลบรารีที่คุณ สร้างจากโปรเจ็กต์ในเครื่องและตรวจสอบได้เท่านั้น ในรุ่นนี้ คุณยังดูและตรวจสอบ ไฟล์ส่วนหัวที่รวมอยู่ในการอ้างอิงไลบรารี C/C++ ภายนอกซึ่งคุณนำเข้า ลงในโปรเจ็กต์แอปได้ด้วย
หากคุณรวมโค้ดและไลบรารี C/C++ ไว้ในโปรเจ็กต์แล้ว ให้เปิดหน้าต่างโปรเจ็กต์ทางด้านซ้ายของ IDE โดยเลือก ดู > หน้าต่างเครื่องมือ > โปรเจ็กต์จากเมนูหลัก แล้วเลือก Android จาก เมนูแบบเลื่อนลง ในไดเรกทอรี cpp ส่วนหัวทั้งหมดที่อยู่ใน ขอบเขตของโปรเจ็กต์แอปจะจัดระเบียบภายใต้โหนด include สำหรับการอ้างอิงไลบรารี C/C++ ในเครื่องแต่ละรายการ ดังที่แสดงด้านล่าง

เปิดใช้ Multidex ดั้งเดิมโดยค่าเริ่มต้น
Android Studio เวอร์ชันก่อนหน้าจะเปิดใช้ Multidex แบบเนทีฟเมื่อติดตั้งใช้งาน
แอปเวอร์ชันแก้ไขข้อบกพร่องในอุปกรณ์ที่ใช้ Android API ระดับ 21 ขึ้นไป ตอนนี้
ไม่ว่าคุณจะติดตั้งใช้งานในอุปกรณ์หรือสร้าง APK สำหรับการเผยแพร่ ปลั๊กอิน Android
สำหรับ Gradle จะเปิดใช้ Multidex แบบเนทีฟสำหรับโมดูลทั้งหมดที่ตั้งค่า
minSdkVersion=21
ขึ้นไป
AAPT2 ย้ายไปยังที่เก็บ Maven ของ Google แล้ว
ตั้งแต่ Android Studio 3.2 เป็นต้นไป แหล่งที่มาของ AAPT2 (เครื่องมือแพ็กเกจชิ้นงานของ Android 2) คือที่เก็บ Maven ของ Google
หากต้องการใช้ AAPT2 โปรดตรวจสอบว่าคุณมีgoogle()
การอ้างอิงในไฟล์
build.gradle
ดังที่แสดงที่นี่
buildscript { repositories { google() // here jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.2.0' } } allprojects { repositories { google() // and here jcenter() } }
buildscript { repositories { google() // here jcenter() } dependencies { classpath("com.android.tools.build:gradle:3.2.0") } } allprojects { repositories { google() // and here jcenter() } }
AAPT2 เวอร์ชันใหม่แก้ไขปัญหาหลายอย่าง รวมถึงการจัดการอักขระที่ไม่ใช่ ASCII ใน Windows ที่ดีขึ้น
การนำการกำหนดค่าออกตามคำขอ
เราได้นำค่ากำหนดกำหนดค่าตามต้องการออกจาก Android Studio แล้ว
Android Studio จะไม่ส่งอาร์กิวเมนต์ --configure-on-demand
ไปยัง Gradle อีกต่อไป
ผู้ช่วยการเชื่อมต่อ ADB
ผู้ช่วยการเชื่อมต่อ ADB ใหม่ มีวิธีการแบบทีละขั้นตอนที่จะช่วยคุณตั้งค่าและใช้อุปกรณ์ผ่านการเชื่อมต่อ Android Debug Bridge (ADB)
หากต้องการเริ่มใช้ผู้ช่วย ให้เลือกเครื่องมือ > ผู้ช่วยการเชื่อมต่อ
ผู้ช่วยการเชื่อมต่อ ADB จะแสดงวิธีการ ควบคุมในบริบท และ รายการอุปกรณ์ที่เชื่อมต่อในชุดหน้าเว็บในแผงผู้ช่วย
การปรับปรุงโปรแกรมจำลอง
ตอนนี้คุณสามารถบันทึกและโหลดสแนปชอตของ AVD (อุปกรณ์เสมือน Android) ได้ทุกเมื่อในโปรแกรมจำลอง Android ซึ่งจะช่วยให้คุณกลับไปใช้อุปกรณ์จำลองในสถานะที่ทราบเพื่อทำการทดสอบได้อย่างรวดเร็วและง่ายดาย เมื่อแก้ไข AVD โดยใช้ AVD Manager คุณจะระบุได้ว่าจะโหลดสแนปชอต AVD ใดเมื่อ AVD เริ่มทำงาน
ตอนนี้ตัวควบคุมสำหรับการบันทึก โหลด และจัดการสแนปชอต AVD จะอยู่ในแท็บสแนปชอตในหน้าต่างการควบคุมเพิ่มเติมของโปรแกรมจำลอง
ดูรายละเอียดได้ที่สแนปชอต
ดูข้อมูลเพิ่มเติมเกี่ยวกับฟีเจอร์ใหม่และการเปลี่ยนแปลงในโปรแกรมจำลองได้ที่ บันทึกประจำรุ่นของโปรแกรมจำลอง