Android Studio Arctic Fox | 1.3.2020 (กรกฎาคม 2021)

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

การกำหนดหมายเลขเวอร์ชันใหม่

อัปเดตหมายเลขเวอร์ชันสำหรับ Android Studio แล้ว

เราได้เปลี่ยนระบบหมายเลขเวอร์ชันสำหรับ Android Studio ให้ใกล้เคียงที่สุด สอดคล้องกับ IntelliJ IDEA, IDE ที่ Android Studio ใช้อยู่

ในระบบตัวเลขก่อนหน้านี้ รุ่นนี้จะมีการกำหนดหมายเลขเป็น Android Studio 4.3 หรือเวอร์ชัน 4.3.0.1 ด้วยระบบตัวเลขใหม่ ตอนนี้ Android Studio - Arctic Fox | 2020.3.1 หรือเวอร์ชัน 2020.3.1

เวอร์ชัน Intellij ชื่อเดิม เก่า - ระบบตัวเลข ระบบใหม่ในปี ชื่อเวอร์ชันใหม่
3.2020 4.3 4.3.0 1.3.2020 หมาจิ้งจอกอาร์กติก | 1.3.2020

วิธีการระบุหมายเลขเวอร์ชันของ Android Studio ตั้งแต่นี้เป็นต้นไปมีดังนี้

<Year of IntelliJ Version>.<IntelliJ major version>.<Studio major version>.<Studio minor/patch version>

  • กลุ่มตัวเลข 2 กลุ่มแรกแสดงเวอร์ชันของแพลตฟอร์ม IntellIj ที่ Android Studio รุ่นนั้นๆ อ้างอิงอยู่ สำหรับรุ่นนี้ ซึ่งเป็นเวอร์ชัน 2020.3
  • กลุ่มตัวเลขที่ 3 จะแสดงเวอร์ชันหลักของ Studio ซึ่งเริ่มต้นที่ 1 และเพิ่มครั้งละ 1 สำหรับ การเผยแพร่หลักแต่ละครั้ง
  • กลุ่มตัวเลขที่ 4 จะแสดงเวอร์ชันย่อย/เวอร์ชันแพตช์ของ Studio โดยเริ่ม ที่ 1 และเพิ่มครั้งละ 1 สำหรับผลงานที่มีผู้เยาว์แต่ละราย
  • นอกจากนี้เรายังตั้งชื่อเวอร์ชันของแต่ละรุ่นหลัก โดยเพิ่มจาก A ถึง Z อิงตามชื่อสัตว์ รุ่นนี้มีชื่อว่า Arctic Fox

อัปเดตหมายเลขเวอร์ชันสำหรับปลั๊กอิน Android Gradle

เราได้เปลี่ยนหมายเลขเวอร์ชันสำหรับปลั๊กอิน Android Gradle (AGP) เป็น ใกล้เคียงกับเครื่องมือสร้าง Gradle ที่เกี่ยวข้องมากขึ้น ดังนั้น AGP 7.0 เป็นรุ่นถัดไปหลังจาก AGP 4.2

โปรดดูรายละเอียดเพิ่มเติมที่หัวข้อการเปลี่ยนแปลงการกำหนดเวอร์ชัน ในบันทึกประจำรุ่นของ AGP

ปลั๊กอิน Android Gradle 7.0.0

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

ตอนนี้การทดสอบหน่วยใช้ตัวดำเนินการทดสอบ Gradle

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

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

เมนูตามบริบทสำหรับการทดสอบ

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

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

แก้ไขการกำหนดค่าการทดสอบใน Android Studio

หากต้องการตรวจสอบการกำหนดค่า Android JUnit ที่ใช้ไม่ได้อีกต่อไป คุณสามารถทำอย่างใดอย่างหนึ่งต่อไปนี้

  • เปิดการกำหนดค่าที่บันทึกไว้ด้วยตนเองในเครื่องมือแก้ไขข้อความ ตำแหน่งของรายการเหล่านี้ ผู้ใช้เป็นผู้ระบุไฟล์ แต่โดยปกติแล้วไฟล์จะปรากฏใน <my-app>/.idea/runConfigurations/
  • ค้นหาการกำหนดค่าชั่วคราวใน <my-app>/.idea/workspace.xml แล้วดูใต้ <component name="RunManager" ...> โหนด เช่น

    <component name="RunManager" selected="Gradle.PlantTest">
    
    <configuration name="PlantTest" type="AndroidJUnit" factoryName="Android JUnit" nameIsGenerated="true">
          <module name="Sunflower.app" />
          <useClassPathOnly />
          <extension name="coverage">
            <pattern>
              <option name="PATTERN" value="com.google.samples.apps.sunflower.data.*" />
              <option name="ENABLED" value="true" />
            </pattern>
          </extension>
          <option name="PACKAGE_NAME" value="com.google.samples.apps.sunflower.data" />
          <option name="MAIN_CLASS_NAME" value="com.google.samples.apps.sunflower.data.PlantTest" />
          <option name="METHOD_NAME" value="" />
          <option name="TEST_OBJECT" value="class" />
          <option name="PARAMETERS" value="" />
          <option name="WORKING_DIRECTORY" value="$MODULE_DIR$" />
          <method v="2">
            <option name="Android.Gradle.BeforeRunTask" enabled="true" />
          </method>
        </configuration>
    

ผู้ช่วยการอัปเกรดที่ได้รับการปรับปรุงสำหรับ AGP

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

หน้าต่างเครื่องมือถาวรใหม่ในผู้ช่วยอัปเกรด

การเปลี่ยนโครงสร้างภายในโค้ดสำหรับคลาส R ที่ไม่ใช่แบบทางอ้อม

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

คุณเข้าถึงฟีเจอร์นี้ได้โดยไปที่เปลี่ยนโครงสร้างภายในโค้ด > ย้ายข้อมูลไปยัง R ที่ไม่ใช่แบบสับเปลี่ยน ชั้นเรียน

เครื่องมือตรวจสอบงานในเบื้องหลังใหม่

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

ผู้ปฏิบัติงานที่ใช้งานอยู่ในเครื่องมือตรวจสอบงานในเบื้องหลัง

คุณสามารถดูข้อมูลโดยละเอียดเพิ่มเติมได้โดยคลิกที่ผู้ปฏิบัติงาน ตัวอย่างเช่น คุณสามารถ สามารถดูคำอธิบายของพนักงาน วิธีการดำเนินการ รายละเอียดของผู้ปฏิบัติงาน ห่วงโซ่ผู้ปฏิบัติงาน และผลของการดำเนินการ

แท็บรายละเอียดของผู้ปฏิบัติงาน

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

เชนผู้ปฏิบัติงานเครื่องมือตรวจสอบงานพื้นหลัง

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

อัปเดตเครื่องมือตรวจสอบฐานข้อมูล

ตอนนี้เครื่องมือตรวจสอบฐานข้อมูลรวมอยู่ในเครื่องมือตรวจสอบแอปใหม่แล้ว คุณจะเห็นเครื่องมือตรวจสอบงานพื้นหลังใหม่ด้วย เปิด หน้าต่างเครื่องมือการตรวจสอบแอปจากแถบหน้าต่างเครื่องมือ หรือเลือกดู > หน้าต่างเครื่องมือ > การตรวจสอบแอปจากแถบเมนู

ส่งออกข้อมูลจากเครื่องมือตรวจสอบฐานข้อมูล

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

  • เลือกฐานข้อมูลหรือตารางในแผงฐานข้อมูล แล้วคลิกส่งออกไปยัง ไฟล์ ใกล้ด้านบนของแผง
  • คลิกขวาที่ฐานข้อมูลหรือตารางในแผงฐานข้อมูลแล้วเลือก ส่งออกไปยังไฟล์จากเมนูตามบริบท
  • เมื่อตรวจสอบตารางหรือผลการค้นหาในแท็บ ให้คลิกส่งออกไปยังไฟล์ เหนือตารางหรือผลการค้นหา

หลังจากเลือกการดำเนินการส่งออกแล้ว คุณสามารถใช้กล่องโต้ตอบส่งออกเพื่อช่วยคุณทำสิ่งต่อไปนี้ ผ่านขั้นตอนสุดท้ายดังที่แสดงด้านล่าง ขึ้นอยู่กับว่าคุณกำลังพยายาม ส่งออกผลลัพธ์ฐานข้อมูล ตาราง หรือข้อความค้นหา คุณมีตัวเลือกในการส่งออก ข้อมูลในรูปแบบต่อไปนี้อย่างน้อย 1 รูปแบบ: DB, SQL หรือ CSV

กล่องโต้ตอบการส่งออกฐานข้อมูล

อัปเดต UI สำหรับการบันทึกในเครื่องมือสร้างโปรไฟล์หน่วยความจำ

เราได้รวมอินเทอร์เฟซผู้ใช้ (UI) ของ Memory Profiler สำหรับ บันทึกกิจกรรมต่างๆ เช่น การบันทึกฮีปดัมป์และการบันทึก Java, Kotlin และหน่วยความจำของระบบ

การจัดสรรหน่วยความจำที่แสดงในเครื่องมือสร้างโปรไฟล์หน่วยความจำ

เครื่องมือสร้างโปรไฟล์หน่วยความจำมีสิ่งต่อไปนี้ ตัวเลือก:

  • จับภาพฮีปดัมป์: ดูออบเจ็กต์ในแอปที่ใช้หน่วยความจำที่ ช่วงเวลาที่เฉพาะเจาะจง
  • บันทึกการจัดสรรแบบเนทีฟ: ดูว่าออบเจ็กต์ C/C++ แต่ละรายการมีการจัดสรรผ่าน ในช่วงระยะเวลาหนึ่ง
  • บันทึกการจัดสรร Java/Kotlin: ดูว่าออบเจ็กต์ Java/Kotlin แต่ละรายการ ที่จัดสรรในช่วงเวลาหนึ่ง

วิธีใช้ตัวเลือก 3 อย่างมีดังนี้

  • หากต้องการบันทึกฮีปดัมป์ ให้เลือกจับภาพฮีปดัมป์ แล้วเลือก บันทึก หลังจากที่เครื่องมือสร้างโปรไฟล์บันทึกฮีปดัมป์เสร็จแล้ว UI เครื่องมือสร้างโปรไฟล์เปลี่ยนไปเป็นหน้าจอแยกต่างหากที่แสดงฮีปดัมป์

    ตัวอย่างฮีปดัมป์ในเครื่องมือสร้างโปรไฟล์หน่วยความจำ

  • หากต้องการบันทึกการจัดสรรแบบเนทีฟในอุปกรณ์ที่ใช้ Android 10 ขึ้นไป เลือกบันทึกการจัดสรรแบบเนทีฟ แล้วเลือกบันทึก ไฟล์บันทึกเสียง ดำเนินต่อไปจนกว่าคุณจะคลิกหยุด หลังจากนั้น UI ของ Memory Profiler จะเปลี่ยนเป็นหน้าจอแยกต่างหาก จะแสดงไฟล์บันทึกในเครื่อง

    ใน Android 9 และต่ำกว่า ตัวเลือกบันทึกการจัดสรรแบบเนทีฟจะไม่แสดง พร้อมใช้งาน

  • หากต้องการบันทึกการจัดสรร Java และ Kotlin ให้เลือก บันทึกการจัดสรร Java / Kotlin จากนั้นเลือกบันทึก ถ้าอุปกรณ์ใช้ Android 8 ขึ้นไป UI ของ Memory Profiler เปลี่ยนเป็นหน้าจอแยกต่างหากที่แสดง บันทึก คุณสามารถโต้ตอบกับไทม์ไลน์แบบย่อเหนือไฟล์บันทึกเสียงได้ (เช่น เพื่อเปลี่ยนช่วงการเลือก) วิธีบันทึกให้เสร็จสมบูรณ์ เลือกหยุด

    การแสดงภาพการจัดสรร Java ในเครื่องมือสร้างโปรไฟล์หน่วยความจำ

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

การอัปเดตเพื่อรีเฟรชโปรเจ็กต์ C++ ที่ลิงก์

เราได้ย้ายไฟล์ที่ไม่เกี่ยวข้องกับการกำหนดค่าจากโฟลเดอร์ .cxx/ ไปไว้ในไฟล์ build/ โฟลเดอร์ บิลด์ CMake C++ ต้องมีเฟสการกำหนดค่าที่สร้าง โปรเจ็กต์ Ninja ที่ใช้ในการดำเนินการขั้นตอนการคอมไพล์และลิงก์ โปรเจ็กต์ ที่ CMake สร้างขึ้นมีค่าใช้จ่ายสูงและคาดว่าจะคงอยู่ได้ใน Gradle Clean ด้วยเหตุนี้ ระบบจึงเก็บข้อมูลเหล่านี้ไว้ในโฟลเดอร์ที่ชื่อว่า .cxx/ ไปยังโฟลเดอร์ build/ โดยปกติแล้ว ปลั๊กอิน Android Gradle จะ เปลี่ยนแปลงการกำหนดค่า และสร้างโครงการ Ninja ใหม่โดยอัตโนมัติ อย่างไรก็ตาม อาจไม่ใช่ทุกกรณี ในกรณีนี้ ระบบจะดำเนินการ "รีเฟรช C++ ที่ลิงก์ โครงการ" สามารถใช้ตัวเลือกเพื่อสร้างโปรเจ็กต์ Ninja ใหม่ด้วยตนเอง

เมทริกซ์ทดสอบใหม่สำหรับการทดสอบหลายอุปกรณ์

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

แผงทดสอบการใช้เครื่องมือ

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

วิธีใช้ประโยชน์จากฟีเจอร์นี้

  1. เลือกเลือกอุปกรณ์หลายเครื่องในเมนูแบบเลื่อนลงของอุปกรณ์เป้าหมายจาก ตรงกลางด้านบนของ IDE)

    กล่องโต้ตอบสำหรับแก้ไขชุดอุปกรณ์

  2. เลือกอุปกรณ์เป้าหมายแล้วคลิกตกลง

    กล่องโต้ตอบสำหรับแก้ไขชุดอุปกรณ์

  3. ทำการทดสอบ

หากต้องการดูผลการทดสอบในแผงเรียกใช้ ให้ไปที่มุมมอง > หน้าต่างเครื่องมือ > Run

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

รองรับ StateFlow ในการเชื่อมโยงข้อมูล

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

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

class ViewModel() {
   val username: StateFlow<String>
}
<TextView
    android:id="@+id/name"
    android:text="@{viewmodel.username}" />

หากคุณใช้แอป Kotlin ที่ใช้ AndroidX การรองรับของ StateFlow จะเป็นดังนี้ โดยอัตโนมัติในฟังก์ชันการผูกข้อมูล ซึ่งรวมถึง ทรัพยากร Dependency ของ Coroutine

ดูข้อมูลเพิ่มเติมได้ที่หัวข้อทำงานกับออบเจ็กต์ข้อมูลที่ได้รับอนุญาตให้สังเกตพฤติกรรมผู้ใช้ได้

การนำเข้าที่แนะนำที่ได้รับการปรับปรุง

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

การรองรับแคชการกำหนดค่าในเครื่องมือวิเคราะห์บิลด์

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

ข้อมูลแคชการกำหนดค่าในเครื่องมือวิเคราะห์บิลด์

การรองรับเครื่องมือ Jetpack Compose

ขณะนี้เราให้การสนับสนุนเพิ่มเติมสำหรับการแสดงตัวอย่างและทดสอบแอปที่ใช้ Jetpack Compose เพื่อประสบการณ์ที่ดีที่สุดในการพัฒนาด้วย Jetpack Compose คุณควรใช้ Android Studio Arctic Fox เวอร์ชันล่าสุดเพื่อให้คุณได้รับประโยชน์จาก ฟีเจอร์เครื่องมือแก้ไขอัจฉริยะ เช่น เทมเพลตโครงการใหม่ และความสามารถในการแสดงตัวอย่าง UI เขียน

สร้างตัวอย่าง

พารามิเตอร์ต่อไปนี้สำหรับ เมธอด@Preview พร้อมให้บริการแล้ว:

  • showBackground: เปิดและปิดพื้นหลังเพื่อดูตัวอย่าง
  • backgroundColor: ตั้งค่าสีที่ใช้เฉพาะในพื้นที่แสดงตัวอย่าง
  • uiMode: พารามิเตอร์ใหม่นี้สามารถใช้ประโยชน์จาก การกำหนดค่า UI_* คงที่และช่วยให้คุณสามารถเปลี่ยนลักษณะการทำงานของการแสดงตัวอย่างได้ เช่น ตั้งค่าเป็นโหมดกลางคืนเพื่อดูปฏิกิริยาของธีม

สร้าง UI ตัวอย่าง

ตัวอย่างแบบอินเทอร์แอกทีฟ

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

หากต้องการหยุด ให้คลิกหยุดการแสดงตัวอย่างแบบอินเทอร์แอกทีฟในแถบเครื่องมือด้านบน

UI ตัวอย่างแบบอินเทอร์แอกทีฟ

ทำให้ใช้งานได้ในอุปกรณ์

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

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

การแก้ไขสดของลิเทอรัล

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

การแก้ไขหมายเลขและการอัปเดตสตริงทันทีในตัวอย่างและในอุปกรณ์

การสนับสนุนการเขียนในเครื่องมือตรวจสอบการออกแบบ

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

คุณสามารถตรวจสอบเลย์เอาต์ที่เขียนด้วย เฟรมเวิร์ก UI ประกาศใหม่ของ Android Jetpack Compose ดูว่าแอปของคุณใช้เลย์เอาต์ที่เขียนในฟีเจอร์เขียนอย่างสมบูรณ์หรือ การออกแบบที่ใช้ทั้งการเขียนและมุมมองแบบผสม เครื่องมือตรวจสอบเลย์เอาต์จะช่วย คุณเข้าใจวิธีแสดงผลเลย์เอาต์ในอุปกรณ์ที่ทำงานอยู่แล้ว

เริ่มต้นใช้งาน

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

UI เครื่องมือตรวจสอบเลย์เอาต์

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

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

ปรับปรุงเมนูแบบเลื่อนลงสำหรับการทำให้ใช้งานได้

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

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

ผู้ช่วยการจับคู่ Wear OS ใหม่

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

การสาธิตผู้ช่วยการจับคู่ Wear OS

เทมเพลตเลย์เอาต์ที่ปรับเปลี่ยนตามอุปกรณ์

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

เทมเพลตเลย์เอาต์ที่ปรับเปลี่ยนตามอุปกรณ์ในหน้าจอขนาดเล็ก เทมเพลตเลย์เอาต์ที่ปรับเปลี่ยนตามอุปกรณ์ตรงกลางหน้าจอ เทมเพลตเลย์เอาต์ที่ปรับเปลี่ยนตามอุปกรณ์ในหน้าจอขนาดใหญ่

ในการเริ่มต้น ให้ไปที่ไฟล์ > ใหม่ เลือกโปรเจ็กต์ใหม่ หรือ โมดูลใหม่ แล้วเลือกเทมเพลตกิจกรรมที่ปรับเปลี่ยนตามอุปกรณ์

เทมเพลตเลย์เอาต์ที่ปรับเปลี่ยนตามอุปกรณ์ในวิซาร์ดโปรเจ็กต์ใหม่

เครื่องตรวจการเข้าถึงสำหรับเครื่องมือแก้ไขเลย์เอาต์

เราได้ผสานรวมเฟรมเวิร์กการทดสอบความสามารถเข้าถึงได้ง่ายของ Android ใน Android Studio เพื่อ ช่วยคุณค้นหาปัญหาด้านการช่วยเหลือพิเศษในเลย์เอาต์ได้ เครื่องมือจะรายงานว่า ปัญหาที่เกี่ยวข้องกับการช่วยเหลือพิเศษและเสนอการแก้ไขที่แนะนำสำหรับปัญหาที่พบได้ทั่วไป (เช่น ไม่มีคำอธิบายเนื้อหาหรือคอนทราสต์ต่ำ) หากต้องการเปิดแผงควบคุม ให้คลิก บนปุ่มรายงานข้อผิดพลาด ในเครื่องมือแก้ไขเลย์เอาต์

การสาธิตเครื่องตรวจการเข้าถึง

รองรับ Apple Silicon

ตอนนี้ Android Studio และโปรแกรมจำลอง Android มีการรองรับเบื้องต้นสำหรับบริการหลักแล้ว เวิร์กโฟลว์ของนักพัฒนาซอฟต์แวร์เมื่อใช้สถาปัตยกรรมฮาร์ดแวร์ Apple Silicon (Arm64) รวมทั้งอิมเมจระบบจำลองที่เกี่ยวข้อง

การสนับสนุนยังไม่พร้อมให้บริการสำหรับเครื่องมือบรรทัดคำสั่ง SDK และ NDK ทั้งหมด คุณ อาจต้องเรียกใช้ Rosetta 2 ในเครื่องของคุณเพื่อเรียกใช้เครื่องมือบางอย่าง

รองรับ Apple Silicon

ปัญหาที่ทราบเกี่ยวกับ Arctic Fox

ส่วนนี้จะอธิบายปัญหาที่ทราบในปัจจุบันใน Android Studio Arctic Fox

แพตช์ไม่ทำงานใน Windows สำหรับ v3.6-v4.1

แพตช์บนแพลตฟอร์ม Windows สำหรับเวอร์ชัน 3.6-v4.1 ไปยัง Android Studio Arctic Fox เวอร์ชันเสถียร อาจไม่ทำงาน

การเปิดตัวแพตช์

รายการต่อไปนี้คือการเผยแพร่แพตช์ใน Android Studio Arctic Fox

Android Studio Arctic Fox | 2020.3.1 แพตช์ 4 (ธันวาคม 2021)

การอัปเดตเล็กน้อยนี้รวมการแก้ไขข้อบกพร่องต่อไปนี้

  • ปลั๊กอิน Android Gradle
    • การตั้งค่า Provider สำหรับ VariantOutput.version อาจเสียหายได้ด้วยแคชการกำหนดค่า
    • gradeResValues.xml ไม่ได้อัปเดตเกี่ยวกับการรับรองรุ่น
  • D8/R8
    • ขว้างลูก java.lang.ClassCastException ขว้าง' ในชั้นเรียน เครื่องมือสร้าง ในบิลด์ที่ลดขนาดโดย R8
    • การปรับประเภทที่เข้าถึงไม่ได้ระหว่างการผสาน Dex
    • java.lang.VerifyError: ยืนยันผู้ตรวจสอบไม่สำเร็จเนื่องจาก ไม่สามารถเข้าถึงช่องอินสแตนซ์จากออบเจ็กต์ประเภท Reference.java.lang.Object
  • ขุยผ้า
    • ปิดใช้การตรวจสอบ Lint สำหรับ MediaCapabilities
    • Lint รายงานข้อผิดพลาดข้อสันนิษฐานที่ผิดพลาด [Instantiable] เมื่อ shrinkResources เปิดใช้อยู่
  • เทมเพลต
    • ตัวเลือกนำเข้าโมดูลเป็นสีเทา

สำหรับข้อมูลเพิ่มเติม โปรดดู บล็อกโพสต์เกี่ยวกับแพตช์ 4 2020.3.1

Android Studio Arctic Fox | 2020.3.1 แพตช์ 3 (ตุลาคม 2021)

การอัปเดตเล็กน้อยนี้รวมการแก้ไขข้อบกพร่องต่อไปนี้

  • ปลั๊กอิน Android Gradle
    • ปลั๊กอินแบบสแตนด์อโลนของ Lint ไม่จัดการทรัพยากร Dependency ของ gradleApi() อย่างเหมาะสม
    • ทริกเกอร์บิลด์ JPS ขณะบิลด์ Gradle ทำงานภายนอก Studio
    • การเปิดใช้ทั้ง KSP และ Kapt ในโปรเจ็กต์ที่มี ตัวประมวลผลข้อมูลที่สร้างแหล่งที่มาขัดข้อง BundleLibraryClassesInputs
  • เอดิเตอร์ C++
    • UI ค้างเนื่องจากการคำนวณ JniReferencesSearch ใช้เวลานาน ในพื้นหลัง
  • เครื่องมือตรวจสอบฐานข้อมูล
    • อนุญาตให้บันทึกฐานข้อมูล
    • ส่งออกข้อมูลโดยใช้การตรวจสอบแอป/เครื่องมือตรวจสอบฐานข้อมูลไม่ได้ พื้นที่ว่างในเส้นทาง
  • เด็กซ์เซอร์ (D8)
    • Java lambda ทำให้เกิดลักษณะการทำงานที่ไม่คาดคิดเมื่อจัดคลาสย่อยคลาสย่อย
  • เครื่องหด (R8)
    • ข้อผิดพลาด Cannot constrain type รายการระหว่างการลดขนาด r8
    • เกิดปัญหาขณะเรียกใช้ R8 3.0.69 (จาก AGP 7.0.2) และ 3.0.72

สำหรับข้อมูลเพิ่มเติม โปรดดู บล็อกโพสต์ Patch 3 2020.3.1

Android Studio Arctic Fox | 2020.3.1 แพตช์ 2 (กันยายน 2021)

การอัปเดตเล็กน้อยนี้รวมการแก้ไขข้อบกพร่องต่อไปนี้

  • ปลั๊กอิน Android Gradle
    • การซิงค์ Gradle เปิดตัว 10 ครั้งเมื่ออัปเกรดจาก AS Arctic Fox Canary 7 เป็น Canary 8
    • การขจัดน้ำตาลและบิลด์ที่ทำซ้ำได้
  • บิลด์ C++
    • ปลั๊กอิน Android Gradle 7.0.0 จะไม่มี jniLibs ใน APK หากใช้การปิด Tasks.whenTaskAdded
  • กำลังแก้ไข
    • MergedManifestRefreshListener ติดอยู่ในลูปที่ไม่สิ้นสุดใน Arctic Fox
  • ขุยผ้า
    • "การตรวจสอบ Lint สำหรับการตรวจสอบ Lint" ไม่ได้ทำงาน
  • เครื่องหด (R8)
    • ClassNotFoundException เมื่อเรียกใช้บิลด์ด้วย R8 ใน AGP7

สำหรับข้อมูลเพิ่มเติม โปรดดู 2020.3.1 บล็อกโพสต์ Patch 2

Android Studio Arctic Fox | 2020.3.1 แพตช์ 1 (สิงหาคม 2021)

การอัปเดตนี้ประกอบด้วยการแก้ไขปัญหาต่อไปนี้

  • ปลั๊กอิน Android Gradle
    • TypedefRemover ใช้ ASM5 และใช้งานร่วมกับซอร์ส JDK 11 ที่ต้องการ ASM7 ไม่ได้
    • บล็อก DSL ใหม่บางรายการใช้จาก Groovy DSL ใน AGP 7.0.0 ไม่ได้
    • ความเสถียรของ AGP 7.0.0 จะส่ง ExternalApiUsageException ใน libraryVariants.all{applicationId}
  • โปรแกรมแก้ไขข้อบกพร่อง C++
    • AS ข้อผิดพลาด Arctic Fox ขณะเริ่มเซสชันการแก้ไขข้อบกพร่องของระบบบน Mac M1, "พบการกำหนดค่า LLDB เสีย"
  • ผู้จัดการทรัพยากร
    • (Windows) ใหม่ > เนื้อหาเวกเตอร์ > image.svg: "ลบ" ไม่ถูกต้อง อักขระใน XML ที่สร้างขึ้น
  • เครื่องหด (R8)
    • NPE ใน BridgeHoisting
    • หลังจากอัปเกรดเป็น 7.0.0, R8 ขัดข้องโดยมีข้อความ "มีการใช้งานที่ไม่คาดคิดเหลืออยู่ในเมธอดหลังจากแทรกในบรรทัด" ข้อผิดพลาด

สำหรับข้อมูลเพิ่มเติม โปรดดู 2020.3.1 แพตช์ 1 บล็อกโพสต์