WindowManager
| อัปเดตล่าสุด | รุ่นที่เสถียร | รุ่นที่อาจได้รับการเผยแพร่ | รุ่นเบต้า | รุ่นอัลฟ่า | 
|---|---|---|---|---|
| 24 กันยายน 2025 | 1.5.0 | - | - | - | 
การประกาศทรัพยากร Dependency
หากต้องการเพิ่มทรัพยากร Dependency ใน WindowManager คุณต้องเพิ่มที่เก็บ Maven ของ Google ลงในโปรเจ็กต์ อ่านข้อมูลเพิ่มเติมได้ที่ที่เก็บ Maven ของ Google
เพิ่มทรัพยากร Dependency สำหรับอาร์ติแฟกต์ที่ต้องการในไฟล์ build.gradle สำหรับ
แอปหรือโมดูล
Groovy
dependencies { implementation "androidx.window:window:1.5.0" // For Java-friendly APIs to register and unregister callbacks implementation "androidx.window:window-java:1.5.0" // For RxJava2 integration implementation "androidx.window:window-rxjava2:1.5.0" // For RxJava3 integration implementation "androidx.window:window-rxjava3:1.5.0" // For testing implementation "androidx.window:window-testing:1.5.0" }
Kotlin
dependencies { implementation("androidx.window:window:1.5.0") // For Java-friendly APIs to register and unregister callbacks implementation("androidx.window:window-java:1.5.0") // For RxJava2 integration implementation("androidx.window:window-rxjava2:1.5.0") // For RxJava3 integration implementation("androidx.window:window-rxjava3:1.5.0") // For testing implementation("androidx.window:window-testing:1.5.0") }
ความคิดเห็น
ความคิดเห็นของคุณช่วยเราปรับปรุง Jetpack ให้ดียิ่งขึ้น โปรดแจ้งให้เราทราบหากพบปัญหาใหม่หรือมี ไอเดียในการปรับปรุงไลบรารีนี้ โปรดดูปัญหาที่มีอยู่ ในไลบรารีนี้ก่อนสร้างปัญหาใหม่ คุณสามารถโหวตปัญหาที่มีอยู่ได้โดย คลิกปุ่มดาว
ดูข้อมูลเพิ่มเติมได้ในเอกสารประกอบของเครื่องมือติดตามปัญหา
รุ่น 1.5
เวอร์ชัน 1.5.0
24 กันยายน 2025
androidx.window:window-*:1.5.0 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.4.0:
- เพิ่มเบรกพอยท์ WindowSizeClassสำหรับขนาดใหญ่และใหญ่พิเศษ (I40d85)
- ขยายการคำนวณ WindowMetricsไปยังบริบทของแอปพลิเคชัน (I8eeeb, b/360934048)
- Provider a Getter to enable direct access to WindowLayoutInfo(Ie9513)
- เปิดตัว API เพื่อบันทึกสถานะการฝังโดยอัตโนมัติและเพื่อคืนค่าสถานะการฝังโดยอัตโนมัติเมื่อรีสตาร์ทกระบวนการของแอป (Ie0295)
- นำ WindowInsetsAPI เวอร์ชันทดลองออก (I68a71)
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหาที่ EmbeddingRuleแสดงhashCodeที่แตกต่างกันในบางกรณี (I748cc)
- แก้ไขกรณีที่ NullPointerExceptionอาจเกิดขึ้นเนื่องจากข้อผิดพลาดในการติดตั้งใช้งานอุปกรณ์
- แก้ไขกรณีที่การตรวจสอบความปลอดภัยของ ActivityEmbeddingไม่สำเร็จเนื่องจาก Proguard นำคลาสที่ไม่ได้ใช้ออก
การมีส่วนร่วมภายนอก
- เพิ่มแพลตฟอร์ม KMP ทั้งหมดไปยัง window-core(If3d7c)
เวอร์ชัน 1.5.0-rc01
27 สิงหาคม 2025
androidx.window:window-*:1.5.0-rc01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-rc01 มีการเปลี่ยนแปลงเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขกรณีที่ NullPointerExceptionอาจเกิดขึ้นเนื่องจากข้อผิดพลาดในการติดตั้งใช้งานอุปกรณ์
- แก้ไขกรณีที่การตรวจสอบความปลอดภัยของ ActivityEmbeddingไม่สำเร็จเนื่องจาก Proguard นำคลาสที่ไม่ได้ใช้ออก
เวอร์ชัน 1.5.0-beta02
13 สิงหาคม 2025
androidx.window:window-*:1.5.0-beta02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-beta02 มีการเปลี่ยนแปลงเหล่านี้
ฟีเจอร์ใหม่
- แก้ไขข้อบกพร่องเล็กน้อย
การมีส่วนร่วมภายนอก
- เพิ่มแพลตฟอร์ม KMP ทั้งหมดไปยัง window-core(If3d7c)
เวอร์ชัน 1.5.0-beta01
2 กรกฎาคม 2025
androidx.window:window-*:1.5.0-beta01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-beta01 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.5.0-alpha02
7 พฤษภาคม 2025
androidx.window:window-*:1.5.0-alpha02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha02 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- เพิ่มเบรกพอยท์ WindowSizeClassสำหรับขนาดใหญ่และใหญ่พิเศษ (I40d85)
- ขยายการคำนวณ WindowMetricsไปยังบริบทของแอปพลิเคชัน (I8eeeb, b/360934048)
- Provider a Getter to enable direct access to WindowLayoutInfo(Ie9513)
- เปิดตัว API เพื่อบันทึกสถานะการฝังโดยอัตโนมัติและเพื่อคืนค่าสถานะการฝังโดยอัตโนมัติเมื่อรีสตาร์ทกระบวนการของแอป (Ie0295)
- นำ WindowInsetsAPI เวอร์ชันทดลองออก (I68a71)
- ซ่อนผู้ผลิตบางราย (I87b8d)
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหาที่ EmbeddingRuleแสดงhashCodeที่แตกต่างกันในบางกรณี (I748cc)
เวอร์ชัน 1.5.0-alpha01
12 มีนาคม 2025
androidx.window:window-*:1.5.0-alpha01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha01 มีการเปลี่ยนแปลงเหล่านี้
ฟีเจอร์ใหม่
- การเปิดตัวเวอร์ชัน 1.5.0 ครั้งแรก
เวอร์ชัน 1.4
เวอร์ชัน 1.4.0
20 พฤษภาคม 2025
androidx.window:window-*:1.4.0 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลงสำคัญตั้งแต่เวอร์ชัน 1.3.0
- การฝังกิจกรรม
- API สำหรับปรับแต่งภาพเคลื่อนไหวการเปิดตัว
- ตัวแบ่งแบบอินเทอร์แอกทีฟ
- ActivityStackการปักหมุด
- การหรี่กล่องโต้ตอบแบบเต็มหน้าจอ
- การเรียกกลับข้อมูลหน้าต่างกิจกรรมที่ฝัง
- ActivityStackการจัดการที่ปรับปรุงแล้ว
- เปิดใช้กิจกรรมใน ActivityStackที่ระบุ
 
- WindowMetricsCalculator- ปรับปรุงการรองรับการทดสอบ
 
- WindowMetrics- วิธีการคำนวณ withDpและheightDpอย่างสะดวก
- อัปเดตการตรวจสอบขอบเขตเป็น isAtLeastและใช้ขอบเขตล่างเพื่อรองรับการเพิ่มค่าใหม่
 
- วิธีการคำนวณ 
- WindowSizeClass- เพิ่มวิธีคำนวณจาก WindowMetrics
 
- เพิ่มวิธีคำนวณจาก 
- WindowInfoTracker- เพิ่ม API เพื่อตรวจหาท่าทางที่รองรับในอุปกรณ์
 
เวอร์ชัน 1.4.0-rc02
23 เมษายน 2025
androidx.window:window-*:1.4.0-rc02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-rc02 มีการเปลี่ยนแปลงเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขข้อขัดข้องของ ProGuard สำหรับ ActivityEmbedding
เวอร์ชัน 1.4.0-rc01
12 มีนาคม 2025
androidx.window:window-*:1.4.0-rc01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-rc01 มีการเปลี่ยนแปลงเหล่านี้
ฟีเจอร์ใหม่
- การอัปเดต WindowSizeClassAPI
- การอัปเดต API การฝังกิจกรรม
เวอร์ชัน 1.4.0-beta02
12 กุมภาพันธ์ 2025
androidx.window:window-*:1.4.0-beta02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-beta02 มีการเปลี่ยนแปลงเหล่านี้
ฟีเจอร์ใหม่
- แก้ไขคำอธิบายประกอบที่อยู่ในพร็อพเพอร์ตี้เท่านั้น แต่ไม่ได้อยู่ใน Getter
เวอร์ชัน 1.4.0-beta01
15 มกราคม 2025
androidx.window:window-*:1.4.0-beta01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-beta01 มีการเปลี่ยนแปลงเหล่านี้
ฟีเจอร์ใหม่
- เพิ่ม API เพื่ออนุญาตให้ปรับแต่งActivityEmbeddingภาพเคลื่อนไหว
- ขยาย WindowMetricsCalculatorAPI การทดสอบเพื่ออนุญาตให้จำลองเมตริกหน้าต่าง
การเปลี่ยนแปลง API
- ซ่อนผู้ผลิตบางราย (I87b8d)
- อนุญาตให้แอปปรับแต่งActivityEmbeddingภาพเคลื่อนไหว (If31a8)
- เพิ่มการรองรับเป้าหมาย watchosDeviceArm64KMP และ Kotlin 1.9 (Icf15d, b/364652024)
- เปิดเผย WindowMetricsCalculatorAPI (I1cebf)
การแก้ไขข้อบกพร่อง
- ตอนนี้ไลบรารีนี้ใช้คำอธิบายประกอบเกี่ยวกับค่า Null ของ JSpecify ซึ่งเป็นแบบใช้ประเภท นักพัฒนาซอฟต์แวร์ Kotlin ควรใช้อาร์กิวเมนต์คอมไพเลอร์ต่อไปนี้เพื่อบังคับใช้การใช้งานที่ถูกต้อง -Xjspecify-annotations=strict(นี่คือค่าเริ่มต้นที่เริ่มต้นด้วยคอมไพเลอร์ Kotlin เวอร์ชัน 2.1.0) (Ie69ac, b/326456246)
เวอร์ชัน 1.4.0-alpha05
16 ตุลาคม 2024
androidx.window:window-*:1.4.0-alpha05 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha05 มีการเปลี่ยนแปลงเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มฟังก์ชันความสะดวกเพื่อรับ widthDpและheightDpจากWindowMetrics
การเปลี่ยนแปลง API
- เพิ่ม widthDpและheightDpลงในWindowMetrics(Ide026)
- นำ WindowInsetsAPI เวอร์ชันทดลองออก (I68a71)
- อัปเดตชื่อวิธีการตรวจสอบขอบเขตเป็น isAtLeast(Ib0ab7)
เวอร์ชัน 1.4.0-alpha04
2 ตุลาคม 2024
androidx.window:window-*:1.4.0-alpha04 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha04 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เพิ่มวิธีการคำนวณ WindowSizeClassจากWindowMetrics(874dba)
- เปลี่ยนวิธีการ WindowSizeClassเป็นcontainsWidthDp,containsHeightDpและcontainsWindowSizeDpเพื่อความชัดเจน (fa760d)
- แปลง WindowAreaControllerเป็นคลาสฐานแบบนามธรรม (I90893)
การแก้ไขข้อบกพร่อง
- เพิ่มการรองรับขอบเขตสัมพัทธ์เมื่อสร้างการทดสอบ FoldingFeature(2e6b3e)
- แก้ไขข้อบกพร่องทั่วไปเมื่อเลือก WindowSizeClass
เวอร์ชัน 1.4.0-alpha03
18 กันยายน 2024
androidx.window:window-*:1.4.0-alpha03 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha03 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มเมธอดยูทิลิตีเพื่อรับ WindowSizeClassจากWindowMetrics(I83f1f)
- เปลี่ยนชื่อ isAtLeastเป็นcontainsBreakpoint(I85b47)
- เพิ่มการโอเวอร์โหลดให้กับ computeWindowSizeClassโดยใช้ Float (I3dcb2, b/364677934, b/364677802, b/364680886)
การแก้ไขข้อบกพร่อง
- เพิ่มเบรกพอยท์ที่ขาดหายไปลงในชุดเบรกพอยท์เริ่มต้น WindowSizeClass
- แก้ไขข้อบกพร่องที่ระบบเลือกขนาดกะทัดรัดไม่ถูกต้องในบางกรณี
เวอร์ชัน 1.4.0-alpha02
4 กันยายน 2024
androidx.window:window-*:1.4.0-alpha02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha02 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
เพิ่มการรองรับ WindowSizeClass ที่กำหนดเอง
- เปิดตัวสร้างสำหรับ WindowSizeClassเพื่อให้นักพัฒนาแอปใช้ของตนเองได้
- เพิ่มisAtLeastเมธอดอรรถประโยชน์เพื่อให้นักพัฒนาแอปประมวลผลค่าWindowSizeClassได้หลากหลาย
- เพิ่มฟังก์ชันส่วนขยายใน Set<WindowSizeClass>เพื่อคำนวณรายการที่ตรงกันมากที่สุดจากชุด
- เพิ่มค่าคงที่สำหรับเบรกพอยท์ที่แนะนำของ Android
- เพิ่มชุดเบรกพอยท์ที่สอดคล้องกับเบรกพอยท์ที่แนะนำของ Android
การเปลี่ยนแปลง API
- อัปเดตชื่อเมธอดขอบเขตสำหรับ WindowSizeClass(If89a6)
- อัปเดต WindowSizeClassAPI เพื่อรองรับการเพิ่มค่าเบรกพอยต์ใหม่ในอนาคต เราใช้ขอบเขตล่างแทนที่จะใช้ขอบเขตสัมบูรณ์ และแนะนำให้นักพัฒนาแอปใช้การตรวจสอบขอบเขตล่างเมื่อประมวลผลWindowSizeClassเราจะเลิกใช้งานWindowWidthSizeClassและWindowHeightSizeClassที่มีอยู่เนื่องจากจะไม่พัฒนาต่อ (I014ce)
เวอร์ชัน 1.4.0-alpha01
7 สิงหาคม 2024
androidx.window:window-*:1.4.0-alpha01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha01 มีการเปลี่ยนแปลงเหล่านี้
ฟีเจอร์ใหม่
- การปักหมุด ActivityStack ช่วยให้แอปปักหมุดเนื้อหาในคอนเทนเนอร์หนึ่งและแยกการนำทางออกจากคอนเทนเนอร์อื่นได้
- ตัวคั่นแบบอินเทอร์แอกทีฟช่วยให้แอปแสดงตัวคั่นแบบคงที่หรือลากได้ระหว่างกิจกรรม 2 อย่างในการนำเสนอแบบแยก
- การหรี่กล่องโต้ตอบแบบเต็มหน้าจอช่วยให้แอปสามารถระบุพื้นที่หรี่กล่องโต้ตอบได้ ไม่ว่าจะหรี่หน้าต่างงานทั้งหมดหรือหรี่เฉพาะคอนเทนเนอร์ที่แสดงกล่องโต้ตอบ
- การเรียกกลับข้อมูลหน้าต่างกิจกรรมที่ฝังช่วยให้แอปได้รับการอัปเดตหน้าต่างกิจกรรมที่ฝังอย่างต่อเนื่อง
- การฝังพื้นหลังภาพเคลื่อนไหวช่วยให้แอประบุพื้นหลังภาพเคลื่อนไหวได้ ซึ่งจะช่วยปรับปรุงคุณภาพภาพเคลื่อนไหวของการเปลี่ยนเมื่อใช้ ActivityEmbedding
- การจัดการ ActivityStack ที่ได้รับการปรับปรุงช่วยให้แอปควบคุม ActivityStacksได้มากขึ้นเมื่อใช้ActivityEmbeddingซึ่งรวมถึงสิ่งต่อไปนี้
- เปิดใช้กิจกรรมใน ActivityStackที่ระบุ
- การสิ้นสุด ActivityStack
การเปลี่ยนแปลง API
- API ใหม่ - WindowInfoTracker#supportedPostures:- API สำหรับตรวจสอบว่าอุปกรณ์รองรับโหมด TableTop สำหรับอุปกรณ์พับได้หรือไม่ เพิ่ม WindowAreaSessionPresenter#getWindow
 
- เพิ่ม API เพื่อรองรับการปักหมุด - ActivityStack- SplitPinRuleชั้นเรียน
- SplitController#pinTopActivityStack
- SplitController#unpinTopActivityStack
 
- เพิ่ม API เพื่อเปิดใช้และกำหนดค่าตัวคั่นแบบอินเทอร์แอกทีฟ - DividerAttributesชั้นเรียน
- SplitAttributes.Builder#setDividerAttributes
 
- เพิ่ม API เพื่อตั้งค่า - EmbeddingConfigurationและ- DimAreaBehaviorสำหรับกล่องโต้ตอบ- EmbeddingConfigurationชั้นเรียน
- DimAreaBehaviorชั้นเรียน
- ActivityEmbeddingController#setEmbeddingConfiguration
 
- เพิ่ม API เพื่อรับข้อมูลอัปเดตเกี่ยวกับหน้าต่างกิจกรรมที่ฝัง - EmbeddedActivityWindowInfoชั้นเรียน
- ActivityEmbeddingController#embeddedActivityWindowInfo
 
- เพิ่ม API เพื่อตั้งค่าพื้นหลังของภาพเคลื่อนไหวการฝัง - EmbeddingAnimationBackground
- SplitAttributes.Builder#setAnimationBackground
 
- เพิ่ม API เพื่อดำเนินการให้เสร็จสิ้น - ActivityStacks- ActivityEmbeddingController#finishActivityStacks
 
- เพิ่ม API เพื่อตั้งค่าการเปิดตัว - ActivityStack- ActivityEmbeddingOptions#setLaunchingActivityStack
 
- API ต่อไปนี้มีความเสถียรและไม่ใช่เวอร์ชันทดลองอีกต่อไป - ActivityEmbeddingController#invalidateVisibleActivityStacks(ย้ายจาก SplitController#invalidateTopVisibleSplitAttributes)
- ActivityEmbeddingController#getActivityStack
- SplitController#updateSplitAttributes
 
- เพิ่ม API สำหรับ 1.4 (I56774) 
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องในอุปกรณ์บางรุ่นซึ่งจะแสดง UNAVAILABLE แทน ACTIVE เมื่อเซสชันทำงานอยู่
- เลิกรองรับ transferActivityToWindowAreaในอุปกรณ์ที่มีvendorApiLevelเป็น 2 เนื่องจาก API ไม่เสถียร
- เปิดตัว API เพื่อเปิดใช้การลากเพื่อขยายเต็มหน้าจอสำหรับตัวคั่นที่ลากได้ของการฝังกิจกรรม (I645c9)
- อนุญาตให้แอปปิดใช้ActivityEmbeddingภาพเคลื่อนไหวผ่านพารามิเตอร์ภาพเคลื่อนไหวสำหรับSplitAttributes(Idc01a)
- นำการระบุสิทธิ์เข้าถึง API ของแพลตฟอร์มใหม่ด้วยตนเองออก เนื่องจากระบบจะดำเนินการนี้โดยอัตโนมัติผ่านการสร้างโมเดล API เมื่อใช้ R8 กับ AGP 7.3 ขึ้นไป (เช่น R8 เวอร์ชัน 3.3) และสำหรับการสร้างทั้งหมดเมื่อใช้ AGP 8.1 ขึ้นไป (เช่น D8 เวอร์ชัน 8.1) เราขอแนะนำให้ลูกค้าที่ไม่ได้ใช้ AGP อัปเดตเป็น D8 เวอร์ชัน 8.1 ขึ้นไป ดูบทความนี้สำหรับรายละเอียดเพิ่มเติม (Ia60e0, b/345472586)
- อนุญาตให้ส่วนขยายใช้พารามิเตอร์ภาพเคลื่อนไหวสำหรับ SplitAttributesเพื่อให้อุปกรณ์ใช้พารามิเตอร์ดังกล่าวสำหรับการเปลี่ยนภาพเคลื่อนไหวได้ (Iede00)
- ซ่อน API การซ้อนทับ (Ic4251)
- เปิดตัว API เพื่อกำหนดค่าตัวคั่นแบบคงที่หรือแบบลากได้สำหรับการแยก (Ia7a78)
- เพิ่มความหนาแน่นให้กับ WindowMetrics(Id6723)
- เพิ่ม API เพื่อรับ SupportedPostures(If557a)
- นำ setLaunchingActivityStackออกจาก API เวอร์ชันทดลอง (I191cf)
- เปิดตัว ActivityEmbeddingController#embeddedActivityWindowInfo(I24312)
- เลิกใช้งาน #getTokenและเพิ่ม#getActivityStackToken(Ie0471)
- เปิดตัว Callback Adapter สำหรับ embeddedActivityWindowInfoFlow API (Ida77f)
- เพิ่ม Callback Adapter สำหรับ API โฟลว์ overlayInfo (I7264f)
- แนะนำ WindowSdkExtensionsRuleเพื่อลบล้างextensionsVersionสำหรับการทดสอบ (Ifb928)
- - ย้ายข้อมูล #setLaunchingActivityStackไปยัง Bundle เพื่อให้เข้ากันได้กับการใช้งานActivityOptionsCompat- ผู้ใช้ควรส่ง activityOptions.toBundleแทนActvityOptionsเอง
- นำ #setLaunchingActivityStack(Activity)ออก ผู้ใช้ควรย้ายข้อมูลไปใช้ActivityEmbeddingController#getActivityStac(Activity)เพื่อรับActivityStackและส่งActivityStackไปยัง#setLaunchingActivityStack(Ie0ccc)
 
- ผู้ใช้ควรส่ง 
- - เปิดตัว ActivityStack.TokenและSpltInfo.Tokenเป็นตัวระบุเพื่อสื่อสารระหว่าง WM Jetpack กับส่วนขยาย- เลิกใช้งาน/แทนที่ API เพื่อรับ/ส่งคืนโทเค็นแทน IBinder (I12b24)
 
- - ขอแนะนำ ActivityEmbeddingController#invalidateVisibleActivityStacks- นำ SplitController#invalidateTopVisibleSplitAttributesออกเนื่องจากฟีเจอร์นี้รวมอยู่ใน#invalidateVisibleActivityStacks(I02ef5)
 
- นำ 
- - เพิ่ม API เพื่อตั้งค่าการกำหนดค่าการฝัง (I59a4a)
- - เพิ่ม API สำหรับปักหมุด/เลิกปักหมุดด้านบน ActivityStackandroidx.Window- อัปเดตแอปเดโมเพื่อให้ปักหมุด/เลิกปักหมุดด้านบนได้ ActivityStack(I24dd3)
 
- อัปเดตแอปเดโมเพื่อให้ปักหมุด/เลิกปักหมุดด้านบนได้ 
- เพิ่ม #finishActivityStacksและActivityEmbeddingOptionsอีกครั้ง (Ic1ab3)
- นำ API ที่ไม่เสถียรออก (Ibc534, b/302380585)
เวอร์ชัน 1.3
เวอร์ชัน 1.3.0
29 พฤษภาคม 2024
androidx.window:window-*:1.3.0 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.2.0
- การรองรับ Kotlin Multiplatform สำหรับคลาสขนาดหน้าต่าง
เวอร์ชัน 1.3.0-rc01
14 พฤษภาคม 2024
WindowManager Jetpack 1.3 รองรับ Kotlin Multiplatform สำหรับWindowSizeClass รวมถึงการแก้ไขข้อบกพร่องหลายรายการ
androidx.window:window-*:1.3.0-rc01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-rc01 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.3.0-beta02
1 พฤษภาคม 2024
androidx.window:window-*:1.3.0-beta02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-beta02 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- นำการรองรับการสร้างและใช้ WindowSizeClassที่กำหนดเองออก (Id1143)
การแก้ไขข้อบกพร่อง
- แก้ไข KotlinReflectionInternalErrorที่เกิดจากการที่ Proguard ลบไฟล์บางไฟล์ในการติดตั้งใช้งานอุปกรณ์บางอย่าง (I01b02)
เวอร์ชัน 1.3.0-beta01
3 เมษายน 2024
androidx.window:window-*:1.3.0-beta01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-beta01 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.3.0-alpha03
6 มีนาคม 2024
androidx.window:window-*:1.3.0-alpha03 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-alpha03 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- แบ่งWindowSizeClassUtilออกเป็นวิธีการที่เฉพาะเจาะจงมากขึ้น (Ie9292)
- กู้คืน WindowSizeClass#compute(I21355, b/324293374)
การแก้ไขข้อบกพร่อง
- แก้ไขข้อขัดข้องที่บริบทที่ระบุไม่ได้ถูกแกะอย่างถูกต้อง (94d10ce , b/318787482)
เวอร์ชัน 1.3.0-alpha02
7 กุมภาพันธ์ 2024
androidx.window:window-*:1.3.0-alpha02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-alpha02 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- การอัปเดตที่ทำกับ API Surface ของ Window Size Class API เพื่อปรับปรุงความยืดหยุ่นสำหรับนักพัฒนาแอปที่ต้องการใช้ Size Class ของตนเอง
การเปลี่ยนแปลง API
- เพิ่มข้อจำกัดความสูงลงในตัวเลือกความกว้าง (I23393)
- เพิ่มฟังก์ชันยูทิลิตีสำหรับการเลือก WindowSizeClassจากชุด เพิ่มฟังก์ชันการให้คะแนนทดลองเพื่อให้ผู้พัฒนาเขียนตัวเลือกของตนเองได้ เพิ่มฟังก์ชันส่วนขยายตัวเลือกเพื่อเลือกWindowSizeClassที่กว้างที่สุดภายในขอบเขตที่กำหนด (I0c944)
- เปิดตัวสร้าง WindowSizeClassเพื่อเพิ่มเบรกพอยท์ที่กำหนดเอง (Ic1ff3)
- เพิ่มฟังก์ชันอำนวยความสะดวกเพื่อสร้างคลาสขนาดจากความกว้าง ความสูง และความหนาแน่น (If67f4)
การแก้ไขข้อบกพร่อง
- แก้ไขข้อยกเว้นเมื่อค่าทศนิยมถูกตัดให้เป็น 0 (272ffac)
เวอร์ชัน 1.3.0-alpha01
15 พฤศจิกายน 2023
androidx.window:window-*:1.3.0-alpha01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-alpha01 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เปิดเผย API หน้าต่างทดลองเพื่อเข้าถึงหน้าจอด้านหลัง
- ตอนนี้ API สำหรับการทดสอบการสร้าง FoldingFeatureเสถียรแล้ว
- ตอนนี้ API สำหรับการทดสอบการตั้งค่าค่า ActivityEmbeddingปลอมเสถียรแล้ว
- WindowLayoutInfoPublisherRuleจะรายงานการลบล้างเมื่อได้รับค่าจาก- UiContext
- WindowInfoTrackerจะรายงานข้อมูลฟีเจอร์การพับไปยังพารามิเตอร์- UiContext
- แสดงเวอร์ชันส่วนขยายในอุปกรณ์
- WindowPropertiesค่าคงที่สำหรับการลบล้างต่อแอปของผู้ใช้- PROPERTY_COMPAT_ALLOW_USER_ASPECT_RATIO_OVERRIDE— แจ้งให้ระบบทราบว่าแอปได้เลือกไม่ใช้การลบล้างความเข้ากันได้ของสัดส่วนภาพที่ผู้ใช้มองเห็น
- PROPERTY_COMPAT_ALLOW_USER_ASPECT_RATIO_FULLSCREEN_OVERRIDE— แจ้งให้ระบบทราบว่าแอปได้เลือกไม่ใช้ตัวเลือกแบบเต็มหน้าจอของการตั้งค่าการลบล้างความเข้ากันได้ของสัดส่วนภาพของผู้ใช้
 
เวอร์ชัน 1.2
เวอร์ชัน 1.2.0
15 พฤศจิกายน 2023
androidx.window:window-*:1.2.0 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0 มีคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.1.0
- เปิดเผย API หน้าต่างทดลองเพื่อเข้าถึงหน้าจอด้านหลัง
- ตอนนี้ API สำหรับการทดสอบการสร้าง FoldingFeatureเสถียรแล้ว
- ตอนนี้ API สำหรับการทดสอบการตั้งค่าค่า ActivityEmbeddingปลอมเสถียรแล้ว
- WindowLayoutInfoPublisherRuleจะรายงานการลบล้างเมื่อได้รับค่าจาก- UiContext
- WindowInfoTrackerจะรายงานข้อมูลฟีเจอร์การพับไปยังพารามิเตอร์- UiContext
- แสดงเวอร์ชันส่วนขยายในอุปกรณ์
เวอร์ชัน 1.2.0-rc01
1 พฤศจิกายน 2023
androidx.window:window-*:1.2.0-rc01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-rc01 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เปิดเผย API หน้าต่างทดลองเพื่อเข้าถึงหน้าจอด้านหลัง
- ตอนนี้ API สำหรับการทดสอบการสร้าง FoldingFeatureเสถียรแล้ว
- ตอนนี้ API สำหรับการทดสอบการตั้งค่าค่า ActivityEmbeddingปลอมเสถียรแล้ว
- WindowLayoutInfoPublisherRuleจะรายงานการลบล้างเมื่อได้รับค่าจาก- UiContext
- WindowInfoTrackerจะรายงานข้อมูลฟีเจอร์การพับไปยังพารามิเตอร์- UiContext
- แสดงเวอร์ชันส่วนขยายในอุปกรณ์
เวอร์ชัน 1.2.0-beta04
18 ตุลาคม 2023
androidx.window:window-*:1.2.0-beta04 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-beta04 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- นำ API ที่ไม่เสถียรออก (Ibc534, b/302380585)
เวอร์ชัน 1.2.0-beta03
20 กันยายน 2023
androidx.window:window-*:1.2.0-beta03 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-beta03 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มRequiresApiการตรวจสอบสำหรับ API ที่ต้องใช้ส่วนขยายเวอร์ชันที่เฉพาะเจาะจงเพื่อให้ทำงานได้อย่างถูกต้อง
- เพิ่ม API เพื่อแสดงเวอร์ชันของส่วนขยายในอุปกรณ์
การเปลี่ยนแปลง API
- ใส่คำอธิบายประกอบเวอร์ชันส่วนขยาย SDK ของหน้าต่างที่จำเป็นใน API สาธารณะ
- นำ isXXXSupportedออกในคอมโพเนนต์การฝังกิจกรรม (Ie3dae)
 
- นำ 
- เปิดตัว WindowSdkExtensionsเพื่อรายงานเวอร์ชันส่วนขยายในอุปกรณ์- แนะนํา RequiresWindowSdkExtensionเพื่อใส่คำอธิบายประกอบเวอร์ชันส่วนขยายขั้นต่ำที่จำเป็น (I05fd4)
 
- แนะนํา 
- ทำให้ WindowAreaInfo#getCapabilityไม่เป็นค่าว่าง (I17048)
เวอร์ชัน 1.2.0-beta01
26 กรกฎาคม 2023
androidx.window:window-*:1.2.0-beta01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-beta01 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เปิดเผย API หน้าต่างทดลองเพื่อเข้าถึงหน้าจอด้านหลัง
- ตอนนี้ API สำหรับการทดสอบการสร้าง FoldingFeatureเสถียรแล้ว
- ตอนนี้ API สำหรับการทดสอบการตั้งค่าค่า ActivityEmbeddingปลอมเสถียรแล้ว
- WindowLayoutInfoPublisherRuleจะรายงานการลบล้างเมื่อได้รับค่าจาก- UiContext
- WindowInfoTrackerจะรายงานข้อมูลฟีเจอร์การพับไปยังพารามิเตอร์- UiContext
การเปลี่ยนแปลง API
- ทำเครื่องหมาย WindowAreaAPI เป็นเวอร์ชันทดลองเพื่อให้สามารถเปลี่ยนแปลง API ต่อไปสำหรับการเปิดตัวเวอร์ชันเสถียรใน 1.3 (I857f5)
- อัปเดตไฟล์ API เพื่อใส่คำอธิบายประกอบการระงับความเข้ากันได้ (I8e87a, b/287516207)
เวอร์ชัน 1.2.0-alpha03
21 มิถุนายน 2023
androidx.window:window-*:1.2.0-alpha03 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha03 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
- นำ API ที่เลิกใช้งานแล้วออกจาก API Surface
- เพิ่ม API เพื่อรองรับการแสดงผลพร้อมกัน
- เพิ่มพร็อพเพอร์ตี้เพื่อเลือกไม่ใช้การลบล้างการปรับขนาดที่บังคับ
- เพิ่มพร็อพเพอร์ตี้เพื่อเลือกไม่ใช้การลบล้างสัดส่วนภาพขั้นต่ำ
- ปรับให้เสถียร ActivityEmbeddingRuleเพื่อรองรับการทดสอบหน่วยเกี่ยวกับการฝังกิจกรรม
การเปลี่ยนแปลง API
การแก้ไขข้อบกพร่อง
- เพิ่มพร็อพเพอร์ตี้ความเข้ากันได้ในการเลือกไม่ใช้สำหรับการลบล้างการบังคับปรับขนาด (Ie7ab1)
- นำ SESSION_STATE_CONTENT_INVISIBLEออกจากอินเทอร์เฟซส่วนขยาย (I6ed19)
- ปรับActivityEmbeddingRuleให้เสถียรเพื่อรองรับการทดสอบหน่วยเกี่ยวกับการฝังกิจกรรม (I8d6b6)
- เพิ่มพร็อพเพอร์ตี้ความเข้ากันได้ของการเลือกไม่ใช้สำหรับการลบล้างสัดส่วนภาพขั้นต่ำ (I66390)
- นำ WindowArea API ที่เลิกใช้งานแล้วออก (Ieb67c)
- เปลี่ยนชื่อพร็อพเพอร์ตี้ลูปคำขอการวางแนวเป็น PROPERTY_COMPAT_ALLOW_IGNORING_ORIENTATION_REQUEST_WHEN_LOOP_DETECTED(Ie2fbd)
- อัปเดตชื่อค่าคงที่ของเซสชันพื้นที่หน้าต่าง (I83675)
- เพิ่มพร็อพเพอร์ตี้ความเข้ากันได้ในการเลือกไม่ใช้ซึ่งจะละเว้นลูปคำขอการหมุนเมื่อตรวจพบ (I0a7a2)
- เพิ่ม WindowAreaComponent#STATUS_ACTIVEเพื่อระบุว่าฟีเจอร์นี้ใช้งานได้แล้ว (I62bc3)
- เพิ่ม RearDisplayPresentationModeAPI (I0401c)
- นำ API สีพื้นหลังออกสำหรับเวอร์ชันที่เสถียร (I34c3e)
- ซ่อน API พื้นที่หน้าต่าง (I39de0)
- เพิ่มวิธีการลบล้าง SplitInfoในSplitControllerเพิ่มวิธีการทดสอบเพื่อสร้าง Double สำหรับSplitInfoและActivityStack(Icd69f)
- กำหนดให้แท็กเป็นแบบไม่บังคับสำหรับ ActivityRule.Builder(Ib0b44)
- นำ RatioSplitTypeExpandContainersSplitและHingeSplitTypeออก ตอนนี้เป็นSplitType- แทนที่ #splitEqually(),#expandContainers()และ#splitByHingeด้วยค่าคงที่SplitType SPLIT_TYPE_EQUAL,SPLIT_TYPE_EXPANDและSPLIT_TYPE_HINGE
- นำฟังก์ชันการทำงานออกเพื่อตั้งค่าประเภทการสำรองของประเภทการแยกบานพับ หากใช้ประเภทการแยกบานพับไม่ได้เนื่องจากสถานะปัจจุบันของอุปกรณ์หรือหน้าต่าง ระบบจะกลับไปใช้การแยกคอนเทนเนอร์งานหลักเท่าๆ กัน ใช้ SplitController#setSplitAttributesCalculatorเพื่อปรับแต่งประเภทการแยกรายได้สำรอง (Ifcc59)
 
- แทนที่ 
- เลิกใช้งาน add/removeSplitCallback- ย้าย add/removeSplitCallbackไปที่SplitControllerCallbackAdapter
- เพิ่มการรองรับ Flowเพื่อรับรายการSplitInfo(I7f1b6)
 
- ย้าย 
- เพิ่มกฎทดสอบสำหรับ ActivityEmbeddingController(I42e9b)
- เปลี่ยนชื่อ ActivityOptionsCompatเป็นActivityEmbeddingOptions(I89301)
- เพิ่ม splitSupportStatusเพื่อระบุว่าการฝังกิจกรรมพร้อมใช้งานหรือไม่ (I10024)
- เปิดตัว SplitAttributes.BackgroundColorเพื่อแสดงมูลค่าDEFAULTได้ดียิ่งขึ้น ชี้แจงว่าระบบไม่รองรับสีพื้นหลังของภาพเคลื่อนไหวที่ไม่ทึบแสง ดังนั้นสีที่ไม่ทึบแสงจะถือเป็นค่าเริ่มต้น ซึ่งหมายถึงการใช้สีพื้นหลังของหน้าต่างธีมปัจจุบัน (Ic6b95)
- แทนที่ alwaysAllow()และalwaysDisallow()ด้วยALWAYS_ALLOWและALWAYS_DISALLOW(I3057b)
- เพิ่ม API สำหรับ SplitRule,SplitAttributes,SplitAttributesCalculator(I92d23)
- เพิ่ม TestActivityStackเพื่อสร้างActivityStackสำหรับการทดสอบ- เพิ่ม TestSplitInfoเพื่อสร้างSplitInfoสำหรับการทดสอบ (I8e779)
 
- เพิ่ม 
- เพิ่มวิธีสร้าง SplitAttributesCalculatorParamsปลอมเพื่อให้ผู้พัฒนาแอปยืนยันSplitAttributesCalculator(Id4a6e) ที่กำหนดเองได้
- เพิ่ม WindowMetricsCalculator#computeCurrentWindowMetrics(@UiContext context: Context)และWindowMetricsCalculator#computeMaximumWindowMetrics(@UiContext context: Context)(I66c7f)
เวอร์ชัน 1.2.0-alpha02
7 มิถุนายน 2023
androidx.window:window-*:1.2.0-alpha02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha02 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- อัปเดต API สำหรับการทดสอบให้มีค่าคงที่สำหรับฟีเจอร์การพับที่ไม่ได้ระบุ
- การลบล้างด้วย WindowLayoutInfoPublishRuleจะลบล้างค่าทั้งหมดของwindowLayoutInfoรวมถึง API ตามบริบท
การเปลี่ยนแปลง API
- เพิ่มค่าคงที่สำหรับฟีเจอร์การพับตรงกลางที่ไม่ได้ระบุ (I7530c)
การแก้ไขข้อบกพร่อง
- อัปเดต WindowLayoutInfoPublishRuleเพื่อรองรับการลบล้างในContextตามWindowLayoutInfo(I2037a)
เวอร์ชัน 1.2.0-alpha01
24 พฤษภาคม 2023
androidx.window:window-*:1.2.0-alpha01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha01 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
สร้างความเสถียรให้กับ API การทดสอบเกี่ยวกับการฝังกิจกรรมและ WindowLayoutInfoTracker ActivityEmbeddingRule ได้รับการโปรโมตเป็นเวอร์ชันเสถียรแล้ว
WindowMetricsCalculatorRule ได้รับการโปรโมตเป็นเวอร์ชันเสถียรแล้ว
ฟังก์ชันยูทิลิตีเพื่อสร้าง FoldingFeature สำหรับการทดสอบได้รับการเลื่อนขั้นเป็นเวอร์ชันเสถียรแล้ว
การเปลี่ยนแปลง API
- ปรับActivityEmbeddingRuleให้เสถียรเพื่อรองรับการทดสอบหน่วยเกี่ยวกับการฝังกิจกรรม (I8d6b6)
- WindowMetrisCalculatorTestRuleมีความเสถียรและอนุญาตให้ใช้เมตริก Stub สำหรับการทดสอบ JVM เราขอแนะนำให้ใช้โปรแกรมจำลองเพื่อให้ได้ผลลัพธ์ที่ถูกต้อง
- ปรับ API การทดสอบให้เสถียรสำหรับ WindowLayoutInfoเพื่อรองรับการทดสอบ JVM (Ie036e)
- เพิ่ม IntRangeสำหรับค่าฟีเจอร์การพับทดสอบ (I69f7d)
เวอร์ชัน 1.1
เวอร์ชัน 1.1.0
7 มิถุนายน 2023
androidx.window:window-*:1.1.0 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0 มีคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.0.0
การฝังกิจกรรม
- เพิ่ม PROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLEDเป็นพร็อพเพอร์ตี้บูลีนของแท็ก<application>ในไฟล์ Manifest ของแอป
- เลิกใช้งาน isSplitSupportedและแทนที่ด้วยsplitSupportStatusเพื่อให้ข้อมูลโดยละเอียดเพิ่มเติมเกี่ยวกับสาเหตุที่ฟีเจอร์การแยกไม่พร้อมใช้งาน
- เพิ่มคลาสที่ซ้อนกัน SplitController.SplitSupportStatusเพื่อระบุค่าคงที่ของสถานะสำหรับพร็อพเพอร์ตี้splitSupportStatus
- ปรับโครงสร้าง SplitControllerเป็นหลายโมดูล ดังนี้- ActivityEmbeddingControllerสำหรับ API ที่เกี่ยวข้องกับ- Activityหรือ- ActivityStack
- ย้าย isActivityEmbeddedจากSplitControllerไปยังActivityEmbeddingController
- RuleControllerโมดูลสำหรับการดำเนินการที่เกี่ยวข้องกับ- EmbeddingRule
- API ที่นำออกแล้ว SplitController
- clearRegisteredRules()
- getSplitRules()
- initialize()
- registerRule()
- unregisterRule()
- เพิ่ม API RuleControllerดังนี้
- addRule()— เพิ่มกฎหรืออัปเดตกฎที่มีแท็กเดียวกัน
- removeRule()— นำกฎออกจากคอลเล็กชันของกฎที่ลงทะเบียน
- setRules()— สร้างชุดกฎ
- clearRules()— นำกฎที่ลงทะเบียนไว้ทั้งหมดออก
- parseRules()— แยกวิเคราะห์กฎจากคำจำกัดความของกฎ XML
 
- โมดูลทั้งหมดต้องมีบริบทที่เริ่มต้นโดยเมธอด #getInstance()ซึ่งรวมถึง- ActivityEmbeddingController#getInstance(Context)
- SplitController#getInstance(Context)
- RuleController#getInstance(Context)
 
- เพิ่มคลาส EmbeddingAspectRatioเพื่อกำหนดค่าคงที่ของลักษณะการทำงานที่คล้ายกับ Enum ที่เกี่ยวข้องกับสัดส่วนภาพของจอแสดงผล
- เพิ่มคลาส SplitAttributesเพื่อกำหนดเลย์เอาต์การแยก
- เพิ่มSplitAttributesฟังก์ชันเครื่องคิดเลขลงในSplitControllerเพื่อปรับแต่งเลย์เอาต์แบบแยกดังนี้- setSplitAttributesCalculator(Function)
- clearSplitAttributesCalculator()
- isSplitAttributesCalculatorSupported()เพื่อตรวจสอบว่าอุปกรณ์รองรับ- SplitAttributesCalculatorAPI หรือไม่
 
- เพิ่มช่อง EmbeddingRule#tagแล้ว
- การอัปเดต API ใน SplitRule- เพิ่ม defaultSplitAttributes— กำหนดเลย์เอาต์การแยกเริ่มต้นของการแยก แทนที่splitRatioและlayoutDirection
- เพิ่มการแปลพร็อพเพอร์ตี้ XML splitRatioและsplitLayoutDirectionเป็นdefaultSplitAttributes
- เปลี่ยนคำจำกัดความของขนาดขั้นต่ำให้ใช้พิกเซลอิสระ (dp) แทนพิกเซล
- เพิ่ม minHeightDpโดยมีค่าเริ่มต้นเป็น 600dp
- เปลี่ยน minWidthเป็นminWidthDpโดยมีค่าเริ่มต้นเป็น 600dp
- เปลี่ยน minSmallestWidthเป็นminSmallestWidthDpโดยมีค่าเริ่มต้นเป็น 600dp
- เพิ่ม maxAspectRatioInHorizontalโดยมีค่าเริ่มต้นเป็นALWAYS_ALLOW
- เพิ่ม maxAspectRatioInPortraitโดยมีค่าเริ่มต้นเป็น 1.4
- กำหนดFinishBehaviorคลาสที่ซ้อนกันเพื่อแทนที่ค่าคงที่ของลักษณะการทำงานเมื่อเสร็จสิ้น
- ใช้การเปลี่ยนแปลงพร็อพเพอร์ตี้กับคลาสที่ซ้อนกันของ Builder ของ SplitPairRuleและSplitPlaceholderRule
 
- เพิ่ม 
- แทนที่ SplitInfo#getSplitRatio()ด้วยSplitInfo#getSplitAttributes()เพื่อให้ข้อมูลเพิ่มเติมที่เกี่ยวข้องกับการแยก
WindowLayout
- เพิ่มการรองรับบริบท UI ที่ไม่มีกิจกรรมในเวอร์ชันทดลองไปยัง WindowInfoTracker
- เพิ่มบริบท UI ที่ไม่มีกิจกรรมเวอร์ชันทดลองลงใน WindowMetricsCalculator
ขั้นตอนการย้ายข้อมูล
- หากต้องการเปิดใช้การฝังกิจกรรมเพื่อแสดงกิจกรรมในโหมดแยกหน้าจอ แอปต้องเพิ่มพร็อพเพอร์ตี้ PROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLEDลงในแท็ก<application>ของไฟล์ Manifestxml <property android:name="android.window.PROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLED" android:value="true" />ซึ่งจะช่วยให้ระบบเพิ่มประสิทธิภาพลักษณะการทำงานของโหมดแยกหน้าจอสำหรับแอปพลิเคชันได้ล่วงหน้า
- SplitInforatio- ตรวจสอบว่าการแยกปัจจุบันซ้อนกันอยู่หรือไม่ โดยทำดังนี้
kotlin SplitInfo.splitAttributes.splitType is SplitAttributes.SplitType.ExpandContainersSplitType
- ตรวจสอบอัตราส่วนปัจจุบัน
kotlin if (SplitInfo.splitAttributes.splitType is SplitAttributes.SplitType.RatioSplitType) { val ratio = splitInfo.splitAttributes.splitType.ratio } else { // Ratio is meaningless for other types. }
 
- ตรวจสอบว่าการแยกปัจจุบันซ้อนกันอยู่หรือไม่ โดยทำดังนี้
- การย้ายข้อมูล SplitController
- SplitController.getInstance()เปลี่ยนเป็น- SplitController.getInstance(Context)
- SplitController.initialize(Context, @ResId int)เปลี่ยนเป็น- RuleController.getInstance(Context).setRules(RuleController.parse(Context, @ResId int))
- SplitController.getInstance().isActivityEmbedded(Activity)เปลี่ยนเป็น- ActivityEmbeddingController.getInstance(Context).isActivityEmbedded(Activity)
- SplitController.getInstance().registerRule(rule)เปลี่ยนเป็น- RuleController.getInstance(Context).addRule(rule)
- SplitController.getInstance().unregisterRule(rule)เปลี่ยนเป็น- RuleController.getInstance(Context).removeRule(rule)
- SplitController.getInstance().clearRegisteredRules()เปลี่ยนเป็น- RuleController.getInstance(Context).clearRules()
- SplitController.getInstance().getSplitRules()เปลี่ยนเป็น- RuleController.getInstance(Context).getRules()
 
- SplitRuleการย้ายข้อมูลพร็อพเพอร์ตี้- ตอนนี้ minWidthและminSmallestWidthใช้หน่วย dp แทนพิกเซลแล้ว แอปสามารถใช้การเรียกต่อไปนี้kotlin TypedValue.applyDimension( COMPLEX_UNIT_DIP, minWidthInPixels, resources.displayMetrics )หรือเพียงแค่หารminWithในหน่วยพิกเซลด้วยdisplayMetrics#density
 
- ตอนนี้ 
- ต้องย้ายข้อมูลค่าคงที่ของลักษณะการทำงานของฟินิชไปยังค่าคงที่ของคลาสที่คล้ายกับ Enum FinishBehavior- FINISH_NEVERเปลี่ยนเป็น- FinishBehavior.NEVER
- FINISH_ALWAYSเปลี่ยนเป็น- FinishBehavior.ALWAYS
- FINISH_ADJACENTเปลี่ยนเป็น- FinishBehavior.ADJACENT
 
- ต้องย้ายข้อมูลทิศทางเลย์เอาต์ไปยัง SplitAttributes.LayoutDirection:- ltrเปลี่ยนเป็น- SplitAttributes.LayoutDirection.LEFT_TO_RIGHT
- rtlเปลี่ยนเป็น- SplitAttributes.LayoutDirection.RIGHT_TO_LEFT
- localeเปลี่ยนเป็น- SplitAttributes.LayoutDirection.LOCALE
- ต้องย้ายข้อมูล splitRatioไปยังSplitAttributes.SplitType.ratio(splitRatio)
 
- SplitPairRule.Builderการย้ายข้อมูล:- SplitPairRule.Builder(filters, minWidth, minSmallestWidth)เปลี่ยนเป็น- kotlin SplitPairRule.Builder(filters) .setMinWidthDp(minWidthInDp) // Optional if minWidthInDp is 600. .setMinSmallestWidthDp(minSmallestWidthDp) // Optional if minSmallestWidthInDp is 600.
- setLayoutDirection(layoutDirection)และ- setSplitRatio(ratio)เปลี่ยนเป็น- kotlin setDefaultSplitAttributes( SplitAttributes.Builder() .setLayoutDirection(layoutDirection) .setSplitType(SplitAttributes.SplitType.ratio(ratio)) .build() )
- setFinishPrimaryWithSecondaryและ- setFinishSecondaryWithPrimaryใช้ค่าคงที่ที่คล้ายกับ- FinishBehaviorenum ดูรายละเอียดได้ที่ "การย้ายข้อมูล SplitRule"
- ใช้ setMaxAspectRatioInPortrait(EmbeddingAspectRatio.ALWAYS_ALLOW)เพื่อแสดงการแยกหน้าจอในอุปกรณ์แนวตั้ง
 
- SplitPlaceholder.Builderการย้ายข้อมูล:- มีเฉพาะพารามิเตอร์ filtersและplaceholderIntentพร็อพเพอร์ตี้อื่นๆ จะย้ายไปที่ตัวตั้งค่า ดูรายละเอียดได้ที่ "การย้ายข้อมูล SplitPairRule.Builder"
- setFinishPrimaryWithPlaceholderจะใช้ค่าคงที่ที่คล้ายกับ Enum ของ- FinishBehaviorดูรายละเอียดได้ที่ "การย้ายข้อมูล SplitRule"
- setLayoutDirection(layoutDirection)และ- setSplitRatio(ratio)เปลี่ยนเป็น- kotlin setDefaultSplitAttributes( SplitAttributes.Builder() .setLayoutDirection(layoutDirection) .setSplitType(SplitAttributes.SplitType.ratio(ratio)) .build() )
- ใช้ setMaxAspectRatioInPortrait(EmbeddingAspectRatio.ALWAYS_ALLOW)เพื่อแสดงการแยกหน้าจอในอุปกรณ์แนวตั้ง
 
- มีเฉพาะพารามิเตอร์ 
เวอร์ชัน 1.1.0-rc01
10 พฤษภาคม 2023
androidx.window:window-*:1.1.0-rc01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-rc01 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เปิดตัว ActivityEmbeddingเป็น API ที่เสถียร
- การแก้ไขข้อบกพร่องหลายรายการ
เวอร์ชัน 1.1.0-beta02
5 เมษายน 2023
androidx.window:window-*:1.1.0-beta02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-beta02 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- การแก้ไขภายในและการล้างข้อมูล
เวอร์ชัน 1.1.0-beta01
22 มีนาคม 2023
androidx.window:window-*:1.1.0-beta01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-beta01 มีคอมมิตเหล่านี้
การฝังกิจกรรม
- เพิ่ม PROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLEDเป็นพร็อพเพอร์ตี้บูลีนของแท็ก<application>ในไฟล์ Manifest ของแอป
- เลิกใช้งาน isSplitSupportedและแทนที่ด้วยsplitSupportStatusเพื่อให้ข้อมูลโดยละเอียดเพิ่มเติมเกี่ยวกับสาเหตุที่ฟีเจอร์การแยกไม่พร้อมใช้งาน
- เพิ่มคลาสที่ซ้อนกัน SplitController.SplitSupportStatusเพื่อระบุค่าคงที่ของสถานะสำหรับพร็อพเพอร์ตี้splitSupportStatus
- ปรับโครงสร้าง SplitControllerเป็นหลายโมดูล ดังนี้- ActivityEmbeddingControllerสำหรับ API ที่เกี่ยวข้องกับ- Activityหรือ- ActivityStack
- ย้าย isActivityEmbeddedจากSplitControllerไปยังActivityEmbeddingController
- RuleControllerโมดูลสำหรับการดำเนินการที่เกี่ยวข้องกับ- EmbeddingRule
- เราได้นำ API ต่อไปนี้ออกแล้ว
- clearRegisteredRules()
- getSplitRules()
- initialize()
- registerRule()
- unregisterRule()
 SplitController
- เพิ่ม RuleControllerAPI ดังนี้- addRule()— เพิ่มกฎหรืออัปเดตกฎที่มีแท็กเดียวกัน
- removeRule()— นำกฎออกจากคอลเล็กชันของกฎที่ลงทะเบียน
- setRules()— สร้างชุดกฎ
- clearRules()— นำกฎที่ลงทะเบียนไว้ทั้งหมดออก
- `parseRules() — แยกวิเคราะห์กฎจากคำจำกัดความกฎ XML
 
 
- โมดูลทั้งหมดต้องมีบริบทที่เริ่มต้นโดยเมธอด #getInstance()ซึ่งรวมถึง- ActivityEmbeddingController#getInstance(Context)
- SplitController#getInstance(Context)
- RuleController#getInstance(Context)
 
- เพิ่มคลาส EmbeddingAspectRatioเพื่อกำหนดค่าคงที่ของลักษณะการทำงานที่คล้ายกับ Enum ที่เกี่ยวข้องกับสัดส่วนภาพของจอแสดงผล
- เพิ่มคลาส SplitAttributesเพื่อกำหนดเลย์เอาต์การแยก
- เพิ่มSplitAttributesฟังก์ชันเครื่องคิดเลขลงในSplitControllerเพื่อปรับแต่งเลย์เอาต์แบบแยกดังนี้- setSplitAttributesCalculator(Function)
- clearSplitAttributesCalculator()
- isSplitAttributesCalculatorSupported()เพื่อตรวจสอบว่าอุปกรณ์รองรับ API ของ SplitAttributesCalculator หรือไม่
 
- เพิ่มช่อง EmbeddingRule#tagแล้ว
- การอัปเดต API ใน SplitRule- เพิ่ม defaultSplitAttributes— กำหนดเลย์เอาต์การแยกเริ่มต้นของการแยก แทนที่splitRatioและlayoutDirection
- เพิ่มการแปลพร็อพเพอร์ตี้ XML splitRatioและsplitLayoutDirectionเป็นdefaultSplitAttributes
- เปลี่ยนคำจำกัดความของขนาดขั้นต่ำให้ใช้พิกเซลอิสระ (dp) แทนพิกเซล
- เพิ่ม minHeightDpโดยมีค่าเริ่มต้นเป็น 600dp
- เปลี่ยน minWidthเป็นminWidthDpโดยมีค่าเริ่มต้นเป็น 600dp
- เปลี่ยน minSmallestWidthเป็นminSmallestWidthDpโดยมีค่าเริ่มต้นเป็น 600dp
- เพิ่ม maxAspectRatioInHorizontalโดยมีค่าเริ่มต้นเป็นALWAYS_ALLOW
- เพิ่ม maxAspectRatioInPortraitโดยมีค่าเริ่มต้นเป็น1.4
- กำหนดFinishBehaviorคลาสที่ซ้อนกันเพื่อแทนที่ค่าคงที่ของลักษณะการทำงานเมื่อเสร็จสิ้น
- ใช้การเปลี่ยนแปลงพร็อพเพอร์ตี้กับBuilderคลาสที่ซ้อนกันของSplitPairRuleและSplitPlaceholderRule
 
- เพิ่ม 
- แทนที่ SplitInfo#getSplitRatio()ด้วยSplitInfo#getSplitAttributes()เพื่อให้ข้อมูลเพิ่มเติมที่เกี่ยวข้องกับการแยก
WindowLayout
- เพิ่มการรองรับบริบท UI ที่ไม่มีกิจกรรมใน WindowInfoTracker
- เพิ่มบริบท UI ที่ไม่ใช่กิจกรรมลงใน WindowMetricsCalculator
ขั้นตอนการย้ายข้อมูล
- หากต้องการเปิดใช้การฝังกิจกรรมเพื่อแสดงกิจกรรมในโหมดแยกหน้าจอ แอปต้องเพิ่มพร็อพเพอร์ตี้ PROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLEDลงในแท็ก<application>ของไฟล์ Manifestxml <property android:name="android.window.PROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLED" android:value="true" />ซึ่งจะช่วยให้ระบบเพิ่มประสิทธิภาพลักษณะการทำงานของโหมดแยกหน้าจอสำหรับแอปพลิเคชันได้ล่วงหน้า
- SplitInforatio- ตรวจสอบว่าการแยกปัจจุบันซ้อนกันอยู่หรือไม่ โดยทำดังนี้
kotlin SplitInfo.splitAttributes.splitType is SplitAttributes.SplitType.ExpandContainersSplitType
- ตรวจสอบอัตราส่วนปัจจุบัน
kotlin if (SplitInfo.splitAttributes.splitType is SplitAttributes.SplitType.RatioSplitType) { val ratio = splitInfo.splitAttributes.splitType.ratio } else { // Ratio is meaningless for other types. }
 
- ตรวจสอบว่าการแยกปัจจุบันซ้อนกันอยู่หรือไม่ โดยทำดังนี้
- SplitControllerการย้ายข้อมูล:- SplitController.getInstance()เปลี่ยนเป็น- SplitController.getInstance(Context)
- SplitController.initialize(Context, @ResId int)เปลี่ยนเป็น- RuleController.getInstance(Context).setRules(RuleController.parse(Context, @ResId int))
- SplitController.getInstance().isActivityEmbedded(Activity)เปลี่ยนเป็น- ActivityEmbeddingController.getInstance(Context).isActivityEmbedded(Activity)
- SplitController.getInstance().registerRule(rule)เปลี่ยนเป็น- RuleController.getInstance(Context).addRule(rule)
- SplitController.getInstance().unregisterRule(rule)เปลี่ยนเป็น- RuleController.getInstance(Context).removeRule(rule)
- SplitController.getInstance().clearRegisteredRules()เปลี่ยนเป็น- RuleController.getInstance(Context).clearRules()
- SplitController.getInstance().getSplitRules()เปลี่ยนเป็น- RuleController.getInstance(Context).getRules()
 
- SplitRuleการย้ายข้อมูลพร็อพเพอร์ตี้- ตอนนี้ minWidthและminSmallestWidthใช้หน่วย dp แทนพิกเซลแล้ว แอปสามารถใช้การเรียกต่อไปนี้kotlin TypedValue.applyDimension( COMPLEX_UNIT_DIP, minWidthInPixels, resources.displayMetrics )หรือเพียงแค่หารminWithในหน่วยพิกเซลด้วยdisplayMetrics#density
 
- ตอนนี้ 
- ต้องย้ายข้อมูลค่าคงที่ของลักษณะการทำงานของฟินิชไปยังค่าคงที่ของคลาสที่คล้ายกับ Enum FinishBehavior- FINISH_NEVERเปลี่ยนเป็น- FinishBehavior.NEVER
- FINISH_ALWAYSเปลี่ยนเป็น- FinishBehavior.ALWAYS
- FINISH_ADJACENTเปลี่ยนเป็น- FinishBehavior.ADJACENT
 
- ต้องย้ายข้อมูลทิศทางเลย์เอาต์ไปยัง SplitAttributes.LayoutDirection:- ltrเปลี่ยนเป็น- SplitAttributes.LayoutDirection.LEFT_TO_RIGHT
- rtlเปลี่ยนเป็น- SplitAttributes.LayoutDirection.RIGHT_TO_LEFT
- localeเปลี่ยนเป็น- SplitAttributes.LayoutDirection.LOCALE
- ต้องย้ายข้อมูล splitRatioไปยังSplitAttributes.SplitType.ratio(splitRatio)
 
- SplitPairRule.Builderการย้ายข้อมูล:- SplitPairRule.Builder(filters, minWidth, minSmallestWidth)เปลี่ยนเป็น- kotlin SplitPairRule.Builder(filters) .setMinWidthDp(minWidthInDp) // Optional if minWidthInDp is 600. .setMinSmallestWidthDp(minSmallestWidthDp) // Optional if minSmallestWidthInDp is 600.
- setLayoutDirection(layoutDirection)และ- setSplitRatio(ratio)เปลี่ยนเป็น- kotlin setDefaultSplitAttributes( SplitAttributes.Builder() .setLayoutDirection(layoutDirection) .setSplitType(SplitAttributes.SplitType.ratio(ratio)) .build() )
- setFinishPrimaryWithSecondaryและ- setFinishSecondaryWithPrimaryใช้ค่าคงที่ที่คล้ายกับ- FinishBehaviorenum ดูรายละเอียดได้ที่ "การย้ายข้อมูล SplitRule"
- ใช้ setMaxAspectRatioInPortrait(EmbeddingAspectRatio.ALWAYS_ALLOW)เพื่อแสดงการแยกหน้าจอในอุปกรณ์แนวตั้ง
 
- SplitPlaceholder.Builderการย้ายข้อมูล:- มีเฉพาะพารามิเตอร์ filtersและplaceholderIntentพร็อพเพอร์ตี้อื่นๆ จะย้ายไปที่ตัวตั้งค่า ดูรายละเอียดได้ที่ "การย้ายข้อมูล SplitPairRule.Builder"
- setFinishPrimaryWithPlaceholderจะใช้ค่าคงที่ที่คล้ายกับ Enum ของ- FinishBehaviorดูรายละเอียดได้ที่ "การย้ายข้อมูล SplitRule"
- setLayoutDirection(layoutDirection)และ- setSplitRatio(ratio)เปลี่ยนเป็น- kotlin setDefaultSplitAttributes( SplitAttributes.Builder() .setLayoutDirection(layoutDirection) .setSplitType(SplitAttributes.SplitType.ratio(ratio)) .build() )
- ใช้ setMaxAspectRatioInPortrait(EmbeddingAspectRatio.ALWAYS_ALLOW)เพื่อแสดงการแยกหน้าจอในอุปกรณ์แนวตั้ง
 
- มีเฉพาะพารามิเตอร์ 
เวอร์ชัน 1.1.0-alpha06
22 กุมภาพันธ์ 2023
androidx.window:window-*:1.1.0-alpha06 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-alpha06 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เปิดเผยเวอร์ชันทดลองของการรับ WindowLayoutInfoจากบริบท UI
การเปลี่ยนแปลง API
- เพิ่ม splitSupportStatusเพื่อระบุว่าการฝังกิจกรรมพร้อมใช้งานหรือไม่ (I10024)
- ทําให้ UI Context WindowLayoutInfoAPI เป็นเวอร์ชันทดลอง (I58ee0)
- เปิดตัว WindowAreaControllerและ API เพื่อเปิดใช้โหมดRearDisplayเพื่อย้ายหน้าต่างปัจจุบันไปยังจอแสดงผลที่สอดคล้องกับกล้องหลัง (Iffcbf)
- อัปเดตสีพื้นหลังเริ่มต้น (I1ac1b)
- เพิ่มพารามิเตอร์ SplitAttributes(I18bdd)
- เพิ่ม API สำหรับ SplitRule,SplitAttributes,SplitAttributesCalculator(I92d23)
- ปรับปรุง API ที่เกี่ยวข้องกับ maxAspectRatioดังนี้- แทนที่ alwaysAllow()และalwaysDisallow()ด้วยALWAYS_ALLOWและALWAYS_DISALLOW
- อัปเดตเอกสารประกอบเกี่ยวกับ API ของ @see ด้วยเอกสารประกอบแบบสแตนด์อโลน (I3057b)
 
- แทนที่ 
- เราได้นำตัวสร้างต่อไปนี้ออกจาก API สาธารณะเนื่องจากแอปไม่ควรเรียกใช้
- SplitInfoเครื่องมือสร้าง
- ActivityStackconstructor (Ide534)
 
- ตอนนี้ SplitRuleรับmaxAspectRatioInPortrait/Landscapeแล้ว โดยจะอนุญาตให้แยกกิจกรรมได้ก็ต่อเมื่อสัดส่วนภาพของขอบเขตหลักมีขนาดเล็กกว่าหรือเท่ากับmaxAspectRatioที่ขอ (Ia5990)
- เปลี่ยน RuleController#parseRulesให้เป็นแบบคงที่ (I785df)
- ปรับปรุง API เกี่ยวกับ ActivityEmbedding
- ตั้งชื่อ API ให้สอดคล้องกัน - ใช้ add/remove สำหรับหลายอินสแตนซ์
- registerRuleเปลี่ยนเป็น- addRule
- unregisterRuleเปลี่ยนเป็น- removeRule
- แทนที่ getSplitRulesด้วยgetRulesเนื่องจากActivityRuleไม่ใช่กฎการแยก
- เพิ่ม RuleController#setRulesเพื่อตั้งค่ากฎหลายข้อ
- แยก API ที่เกี่ยวข้องกับกฎจาก SplitControllerไปยัง SingletonRuleControllerปัจจัยต่างๆ มีดังนี้
- addRule
- removeRule
- getRules
- setRules
- clearRules
- parseRules
- ดึงข้อมูล #isActivityEmbeddedจากSplitControllerไปยังActivityEmbeddingControllerแบบเดี่ยว ปัจจัยต่างๆ มีดังนี้
- isActivityEmbedded
- นำ SplitController#initializeออก หากต้องการตั้งกฎจากไฟล์ XML โปรดใช้RuleController#parseRulesและ#setRulesก่อนการเปลี่ยนแปลงนี้SplitController.initialize(context, R.xml.static_rules)หลังการเปลี่ยนแปลงนี้val ruleController = RuleController.getInstance(context) val rules = ruleController.parseRules(R.xml.static_rules) ruleController.setRules(rules)
- เราไม่ได้แยกความแตกต่างระหว่างกฎแบบคงที่กับกฎรันไทม์อีกต่อไป อย่างไรก็ตาม การเรียกใช้ #clearRulesresults จะล้างกฎทั้งหมดไม่ว่าจะลงทะเบียนด้วยคำจำกัดความกฎ XML แบบคงที่หรือที่รันไทม์ หากต้องการให้SplitController#clearRegisteredRulesมีลักษณะการทำงานแบบเดิม โปรดเรียกใช้RuleController#parseRulesด้วยรหัสทรัพยากร XML และเรียกใช้RuleController#setRulesเพื่อตั้งค่ากฎอีกครั้ง ก่อนการเปลี่ยนแปลงนี้SplitController.getInstance(context).clearRegisteredRules()หลังการเปลี่ยนแปลงนี้val ruleController = RuleController.getInstance(context) val rules = ruleController.parseRules(R.xml.static_rules) ruleController.setRules(rules)(Ib3967)
 
- ปรับปรุง SplitRule API ดังนี้
- ใช้ขนาดขั้นต่ำใน DP แทนพิกเซลสำหรับ SplitRule
- ปรับโครงสร้างใหม่สำหรับ SplitRuleBuilder เพื่อให้มิติข้อมูลขั้นต่ำเป็นตัวเลือก (I95f17)
 
- ใช้ขนาดขั้นต่ำใน DP แทนพิกเซลสำหรับ 
- ส่งบริบทเพื่อเริ่มต้น SplitController(I42549)
- เปลี่ยนชื่อ SplitRule#layoutDirเป็น#layoutDirectionและSplitRule Builder#setLayoutDirเป็นBuilder#setLayoutDirection(I3f6d1)
เวอร์ชัน 1.1.0-alpha04
9 พฤศจิกายน 2022
androidx.window:window-*:1.1.0-alpha04 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-alpha04 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เปิดเผยเมธอดเพื่อพิจารณาว่า ActivityStackว่างเปล่าสำหรับActivityEmbeddingหรือไม่
- นำแท็ก API เวอร์ชันทดลองออกจาก API ของ ActivityEmbedding
- ซ่อน ActivityRuleconstructor เนื่องจากBuilderเป็นวิธีที่แนะนำในการสร้าง
- เพิ่มวิธีการทดลองเพื่อรับ WindowInsetsในWindowMetrics
- อัปเดต SplitPlaceholderFinishBehaviorเพื่อป้องกันไม่ให้ระบบเติมข้อความตัวยึดตำแหน่งให้เสร็จสมบูรณ์ การสิ้นสุดตัวยึดตำแหน่งทำให้เกิดลักษณะการทำงานที่สับสน
การเปลี่ยนแปลง API
- ทำให้ val isEmptyเป็นแบบสาธารณะเพื่อแทนที่ funisEmpty
- เปลี่ยนชื่อกิจกรรมพารามิเตอร์ ActivityStackเป็นactivitiesInProcess(Ia5055)
- นำ ActivityFilter#matchesClassNameและActivityFilter#matchesClassNameOrWildCardออกเนื่องจากทำให้เกิดความสับสน
- เพิ่ม ActivityFilter#componentNameและActivityFilter#intentActionเพื่อให้ผู้โทรแยกแยะตัวกรองต่างๆ ได้ (I41f22)
- นำ @DeprecatedAPI ออกจาก API การทดสอบ (I216b3)
- นำ @ExperimentalWindowApiสำหรับ Activity Embedding API (I69ebe) ออก
- ซ่อนตัวสร้าง ActivityRuleให้ใช้ Builder แทน (If4eb6)
- เพิ่ม API เพื่อตรวจสอบว่ากิจกรรมเป็นส่วนหนึ่งของ ActivityFilterหรือไม่ (Ia43cf)
- อัปเดตไฟล์ API เพื่อให้สอดคล้องกับการเปลี่ยนแปลงในคลาส WindowMetricsและWindowMetricsCalculatorCompat(I667fe)
- อัปเดต Javadoc ของพร็อพเพอร์ตี้และชื่อคลาส (Ia1386)ActivityEmbedding
- เพิ่มชื่อแท็กพร็อพเพอร์ตี้ ActivityEmbeddingที่จะใช้ใน AndroidManifest.xml (Id1ad4)
- เพิ่ม API ใหม่ SplitPlaceholderFinishBehaviorและSplitPlaceholderRule.finishPrimaryWithPlaceholderซึ่งจะแทนที่SplitPlaceholderRule.finishPrimaryWithSecondaryที่มีอยู่ซึ่งกำหนดเวลาที่กิจกรรมตัวยึดตำแหน่งเสร็จสิ้น และลักษณะการทำงานของกิจกรรมที่เชื่อมโยงในการฝังกิจกรรม (I64647)
การแก้ไขข้อบกพร่อง
- เปิดตัว WindowAreaControllerและ API เพื่อเปิดใช้โหมดRearDisplayเพื่อย้ายหน้าต่างปัจจุบันไปยังจอแสดงผลที่สอดคล้องกับกล้องหลัง (I388ab)
เวอร์ชัน 1.1.0-alpha03
27 กรกฎาคม 2022
androidx.window:window-*:1.1.0-alpha03 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-alpha03 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- อัปเดตค่าเริ่มต้นสำหรับกฎการฝัง
การเปลี่ยนแปลง API
- อัปเดตค่าเริ่มต้นสำหรับพร็อพเพอร์ตี้ของกฎการฝัง (Ic4d35)
เวอร์ชัน 1.1.0-alpha02
11 พฤษภาคม 2022
androidx.window:window-*:1.1.0-alpha02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-alpha02 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เปิดตัวไลบรารีอะแดปเตอร์เพื่อรองรับ Java และ RxJava
เวอร์ชัน 1.1.0-alpha01
11 พฤษภาคม 2022
androidx.window:window-*:1.1.0-alpha01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-alpha01 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เปิดตัวอะแดปเตอร์เพื่อรองรับ Java และ RxJava
เวอร์ชัน 1.1.0-alpha01
20 เมษายน 2022
androidx.window:window:1.1.0-alpha01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-alpha01 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- แก้ไขข้อบกพร่องที่ทำให้การเรียกใช้แอปในเบื้องหลังหยุดการปล่อยฟีเจอร์การพับ
- ขยายความเกี่ยวกับ ActivityEmbedding API เวอร์ชันทดลอง
การเปลี่ยนแปลง API
- API สาธารณะเพื่อตรวจสอบว่ามีการฝังกิจกรรมหรือไม่ (I39eb7)
การแก้ไขข้อบกพร่อง
- เพิ่ม API ที่ปรับแต่งลักษณะการทำงานเมื่อสิ้นสุดสำหรับคอนเทนเนอร์ในการแยกกิจกรรม (I1a1e4)
- เพิ่มตัวเลือกการกำหนดค่าใหม่สำหรับกฎการแยกกิจกรรม (Iec6af)
รุ่น 1.0
เวอร์ชัน 1.0.0
26 มกราคม 2022
androidx.window:window-*:1.0.0 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0 มีคอมมิตเหล่านี้
ฟีเจอร์หลักของเวอร์ชัน 1.0.0
- รองรับโทรศัพท์แบบพับได้ตั้งแต่ WindowInfoTrackerและFoldingFeatureWindowMetricsCalculatorเพื่อช่วยคำนวณ WindowMetrics ปัจจุบัน
เวอร์ชัน 1.0.0-rc01
15 ธันวาคม 2021
androidx.window:window-*:1.0.0-rc01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-rc01 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มการรองรับโทรศัพท์แบบพับได้ผ่าน WindowInfoTracker
- เพิ่มวิธีการคำนวณ WindowMetricsปัจจุบันและสูงสุด
- เพิ่ม API สำหรับทดสอบที่รองรับ
เวอร์ชัน 1.0.0-beta04
17 พฤศจิกายน 2021
androidx.window:window-*:1.0.0-beta04 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-beta04 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เปลี่ยนชื่อ WindowInfoRepository เป็น WindowInfoTracker
- ทําให้ Activity เป็นการอ้างอิงเมธอดที่ชัดเจนสําหรับ WindowInfoTracker
- เพิ่ม TestRule อย่างง่ายสำหรับ WindowMetricsCalculator เพื่อรองรับนักพัฒนาแอปที่ใช้ Robolectric
การเปลี่ยนแปลง API
- แตกส่วนขยาย (I25a5f)
- เพิ่ม isEmpty ใน ActivityStack (I5a4e6)
- เปลี่ยนชื่อ WindowInfoRepository เป็น WindowInfoTracker
- อัปเดตทรัพยากร Dependency ของ java/rxjava/testing ให้ตรงกัน (I0da63)
 
- เพิ่มกฎการทดสอบสำหรับ WindowMetricsCalculator อย่างง่าย (Ibacdb)
เวอร์ชัน 1.0.0-beta03
27 ตุลาคม 2021
androidx.window:window-*:1.0.0-beta03 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-beta03 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่ม API การฝังกิจกรรมทดลอง เลย์เอาต์เวอร์ชันเริ่มต้นนี้ช่วยให้แสดงกิจกรรม 2 อย่างควบคู่กันได้
การเปลี่ยนแปลง API
- นำ API currentWindowMetrics ออกเนื่องจากเราไม่สามารถระบุได้อย่างถูกต้อง โปรดใช้ WindowMetricsCalculator แทน (Icda5f)
- อัปเดต API ของส่วนขยาย (Ica92b)
- เพิ่มอินเทอร์เฟซสำหรับฟีเจอร์ใหม่ที่ช่วยให้ฝังกิจกรรมและแสดงกิจกรรมแบบเคียงข้างกันภายในหน้าต่างงานหลักได้ (I5711d)
- ซ่อนตัวสร้างสำหรับ WindowMetrics และ WindowLayoutInfo โปรดใช้ Test API แทน (I5a1b5)
- เพิ่ม API เพื่อสร้างออบเจ็กต์ WindowLayoutInfo ปลอม (I4a2fd)
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหาหน่วยความจำรั่วไหลแล้ว (I3fc79, b/202989046)
เวอร์ชัน 1.0.0-beta02
1 กันยายน 2021
androidx.window:window-*:1.0.0-beta02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-beta02 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มคำอธิบายประกอบทดลองเพื่อใส่คำอธิบายประกอบ API ทดลอง (I9f1b6)
- เพิ่มเมธอดทดสอบเพื่อสร้าง FoldingFeature สำหรับทดสอบที่ยอมรับ Rect ซึ่งจะช่วยให้ทดสอบได้ง่ายขึ้นเมื่อใช้ Robolectric แทนที่จะใช้ Activity จริง (Id1cca)
เวอร์ชัน 1.0.0-beta01
18 สิงหาคม 2021
androidx.window:window-*:1.0.0-beta01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-beta01 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- นำค่าคงที่เก่าออกและเปลี่ยน FoldingFeatureเป็นอินเทอร์เฟซ
การเปลี่ยนแปลง API
- นำค่าคงที่เก่าออกและทำให้ FoldFeature เป็นอินเทอร์เฟซ (I9a2d5)
การแก้ไขข้อบกพร่อง
- ไลบรารีที่ขึ้นอยู่กับไลบรารี Test Coreได้รับการ อัปเกรดเป็นเวอร์ชัน1.4.0แล้ว และตอนนี้จะทำงานร่วมกับแพลตฟอร์ม Android เวอร์ชัน S ได้แล้ว (I88b72, b/189353863)
เวอร์ชัน 1.0.0-alpha10
4 สิงหาคม 2021
androidx.window:window-*:1.0.0-alpha10 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha10 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เปลี่ยนชื่อ WindowInfoRepo เป็น WindowInfoRepository และปรับคลาส / ไฟล์ที่เกี่ยวข้อง
- แปลงเมตริกหน้าต่างปัจจุบันเป็น Flow ใน WindowInfoRepository เนื่องจากค่าจะเปลี่ยนแปลงไปตามเวลา
- เปลี่ยนชื่อ WindowInfoRepoJavaAdapter เป็น WindowInfoRepoCallbackAdapter
- เพิ่มเมธอด Helper เพื่อสร้างออบเจ็กต์ FoldingFeature สำหรับการทดสอบ
- อัปเดตแพ็กเกจเพื่อจัดกลุ่มคลาสตามฟีเจอร์ที่รองรับ
การเปลี่ยนแปลง API
- เปลี่ยนชื่อ ActivityExt เป็น ActivityExtensions เปลี่ยนจาก Repo เป็น Repository (I61a16)
- อัปเดตแพ็กเกจสำหรับชั้นเรียน (I23ae2)
- นำ WindowMetrics ออกจาก WindowInfoRepo (I24663)
- นำ WindowManager ออกและใช้ WindowInfoRepo
- ทำให้ WindowBackend เป็นภายใน (I06d9a)
 
- แปลงเมตริกหน้าต่างเป็น Flow
- เปลี่ยนชื่อ Java Adapter เป็น WindowInfoRepoCallbackAdapter
- นำ CallbackFlow ออกเพื่อไม่ให้ใช้ API ที่เป็นเวอร์ชันทดลองอีก (Ia4d15)
 
- เพิ่มเมธอดตัวช่วยเพื่อสร้างฟีเจอร์การแสดงผลทดสอบ
- เปลี่ยนจาก occlusionMode เป็น occlusionType (If4cff)
 
การแก้ไขข้อบกพร่อง
- แก้ไขข้อผิดพลาดของ Proguard ที่มีการนำไลบรารีหลักออก
- แก้ไขข้อผิดพลาดที่ WindowLayoutInfo ไม่ได้ส่งไปยังผู้ติดตามเพิ่มเติม
- แก้ไขข้อผิดพลาดที่การเปลี่ยนแปลงการกำหนดค่าจะไม่ทริกเกอร์การอัปเดตฟีเจอร์การพับ
เวอร์ชัน 1.0.0-alpha09
30 มิถุนายน 2021
androidx.window:window-*:1.0.0-alpha09 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha09 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
- เปลี่ยนจากค่าคงที่จำนวนเต็มเป็น Enum ที่ไม่มีขอบเขต
- เพิ่มเครื่องมือทดสอบเพื่อสร้างฟีเจอร์การพับทดสอบ
การเปลี่ยนแปลง API
- เพิ่มเมธอดตัวช่วยเพื่อสร้างฟีเจอร์การแสดงผลทดสอบ (I3cf54)
- เปลี่ยนจาก occlusionModeเป็นocclusionType
 
- เปลี่ยนจาก 
การแก้ไขข้อบกพร่อง
- ส่งค่าเริ่มต้นเมื่อเพิ่มผู้ใช้หลายรายของสตรีมข้อมูล
เวอร์ชัน 1.0.0-alpha08
16 มิถุนายน 2021
androidx.window:window-*:1.0.0-alpha08 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha08 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
- เผยแพร่ Artifact สำหรับการทดสอบเพื่อให้ทดสอบได้ง่ายขึ้นเมื่อใช้ WindowInfoRepository ใช้ WindowInfoRepository เพื่อรับข้อมูลเกี่ยวกับ DisplayFeatures และ WindowMetrics (I57f66, Ida620)
เวอร์ชัน 1.0.0-alpha07
2 มิถุนายน 2021
androidx.window:window-*:1.0.0-alpha07 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha07 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- ย้ายข้อมูลไลบรารีหน้าต่างหลักไปยัง Kotlin จะใช้โครูทีนและฟังก์ชันระงับเพื่อแสดงข้อมูลแบบไม่พร้อมกันในอนาคต
- เพิ่ม WindowInfoRepo เป็นจุดโต้ตอบหลักสำหรับการรับ WindowMetrics และสตรีม WindowLayoutInfo
- อาร์ติแฟกต์ window-javaใหม่เพื่อแสดง API ที่เป็นมิตรกับ Java สำหรับลงทะเบียนและยกเลิกการลงทะเบียนการเรียกกลับ
- อาร์ติแฟกต์ใหม่ window-rxjava2และwindow-rxjava3เพื่อแสดง API ที่ปรับให้เหมาะกับ RxJava
การเปลี่ยนแปลง API
- เพิ่ม WindowServicesเพื่อระบุการขึ้นต่อกันอย่างสม่ำเสมอ- เพิ่ม API ที่อิงตามโครูทีนเพื่อใช้ข้อมูลเลย์เอาต์หน้าต่าง (Iab70f)
 
- ย้ายข้อมูลไลบรารีหลักของ Window Manager ไปยัง Kotlin (Icca34)
การแก้ไขข้อบกพร่อง
- เพิ่มคลาสข้อมูลใหม่เพื่อแสดงขอบเขตของฟีเจอร์ (I6dcd1)
เวอร์ชัน 1.0.0-alpha06
5 พฤษภาคม 2021
androidx.window:window:1.0.0-alpha06 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha06 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เราได้เริ่มย้ายข้อมูลไปยัง Kotlin แล้ว และจะดำเนินการให้เสร็จสิ้นในรุ่นถัดไป
- เราได้นำ DeviceState ออกจาก API สาธารณะแล้ว โปรดใช้ FoldingFeature แทน
- เราได้นำ STATE_FLIPPEDออกจากสถานะ FoldingFeature เนื่องจากไม่มี Use Case ใดที่รองรับในขณะนี้
- นอกจากนี้ เรายังได้นำ API อื่นๆ ที่เลิกใช้งานแล้วออกด้วย
การเปลี่ยนแปลง API
- การเพิ่ม Kotlin เป็นทรัพยากร Dependency
- ย้ายข้อมูลไลบรารีหลักไปยัง Kotlin (Idd995)
 
- นำเครื่องมือสร้าง DisplayFeatureออกแล้ว (I61fa4)
- นำ DeviceStateออกจาก API สาธารณะแล้ว โปรดใช้FoldingFeatureแทน (Id6079)
- นำการเรียกกลับสถานะอุปกรณ์ออกจากส่วนขยาย (I5ea83)
- นำ STATE_FLIPPEDออกจาก FoldingFeature (I9c4e1)
- นำวิธีการลงทะเบียนที่เลิกใช้งานแล้วออก (Ib381b)
เวอร์ชัน 1.0.0-alpha05
24 มีนาคม 2021
androidx.window:window:1.0.0-alpha05 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha05 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
เราได้เพิ่มวิธีการที่สะดวกให้กับ FoldingFeature เพื่อให้แอปบอกได้ว่าฟีเจอร์นี้แยกกันหรือบดบังกันอยู่ และกำหนดการวางแนวของบานพับได้ นอกจากนี้ เรายังซ่อนประเภทบานพับเพื่อให้
เราจะนำวิธีการอ่านแบบซิงโครนัสออกจาก WindowManager วิธีการอ่านแบบซิงโครนัสมีแนวโน้มที่จะเกิดข้อผิดพลาดเนื่องจากมีสภาวะแข่งขันโดยนัย ลงทะเบียน Listener และ Callback เพื่อรับข้อมูลอัปเดตเกี่ยวกับ WindowLayoutInfo
การเปลี่ยนแปลง API
- เพิ่มวิธีการที่สะดวกในการทำงานกับ FoldingFeatures (Ie733f)
- นำเมธอดการอ่านแบบซิงโครนัสออกจาก WindowManager (I96fd4)
เวอร์ชัน 1.0.0-alpha04
10 มีนาคม 2021
androidx.window:window:1.0.0-alpha04 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha04 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- แก้ไขข้อบกพร่องที่ไม่มีการปล่อย WindowLayoutInfo หากไม่มีการติดตั้งใช้งาน OEM ตอนนี้เราจะส่ง WindowLayoutInfo ที่ว่างเปล่า
- แก้ไขข้อบกพร่องที่สถานะจะไม่อัปเดตอย่างถูกต้องหากสถานะบานพับเปลี่ยนไปขณะที่แอปทำงานในเบื้องหลัง ตอนนี้สถานะควรจะสอดคล้องกันแล้ว
- อัปเดตไฟล์ ProGuard เพื่อไม่สนใจคำเตือนจากทรัพยากร Dependency ของรันไทม์
การแก้ไขข้อบกพร่อง
- ส่งค่าว่างเมื่อไม่มีไลบรารี OEM (Ide935)
เวอร์ชัน 1.0.0-alpha03
18 กุมภาพันธ์ 2021
androidx.window:window:1.0.0-alpha03 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha03 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
- ส่งค่าว่างสำหรับ WindowLayoutInfo เมื่อการติดตั้งใช้งาน OEM ว่างเปล่า ซึ่งจะช่วยให้คุณใช้คลังในอุปกรณ์ต่างๆ ได้ง่ายขึ้น เนื่องจาก API เป็นแบบอะซิงโครนัส เราจึงยังคงแนะนําให้แอปเขียนโค้ดป้องกันบางอย่างและส่งค่าเริ่มต้นหลังจากหมดเวลา เราไม่รับประกันการติดตั้งใช้งาน OEM และค่าเริ่มต้นอาจล่าช้า
การแก้ไขข้อบกพร่อง
- ส่งค่าว่างเมื่อไม่มีไลบรารี OEM (Ide935)
เวอร์ชัน 1.0.0-alpha02
27 มกราคม 2021
androidx.window:window:1.0.0-alpha02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha02 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เราได้เลิกใช้งาน API บางรายการเพื่อช่วยปรับปรุง API และลดข้อผิดพลาด ตัวอย่างที่สำคัญ ได้แก่ การนำการอ่านแบบซิงโครนัสออกจาก WindowManager และการเลิกใช้งาน DeviceState การดำเนินการอ่านแบบซิงโครนัสอาจทำให้เกิดสภาวะการแข่งขันและมี UI ที่ไม่ถูกต้อง 
- เราได้แปลง DisplayFeature เป็นอินเทอร์เฟซที่ฟีเจอร์อื่นๆ จะนำไปใช้ในอนาคต ฟีเจอร์แรกคือ FoldingFeature ซึ่งตอนนี้เป็นตัวแทนของการพับหน้าจอหรือบานพับ นอกจากนี้ ยังมีสถานะของบานพับที่แทนที่ DeviceState ด้วย 
- WindowMetrics เปิดตัวใน Android 11 เพื่อให้วิธีง่ายๆ แก่นักพัฒนาแอปในการค้นหาเมตริกเกี่ยวกับหน้าต่าง เช่น ตำแหน่งและขนาดบนหน้าจอ รวมถึงการแทรกของระบบ เราได้ย้อนพอร์ต API ในรุ่นนี้เพื่อให้นักพัฒนาแอปใช้ประโยชน์จาก WindowMetrics และรองรับ Android เวอร์ชันเก่าต่อไปได้ คุณรับ WindowMetrics ได้ผ่าน - WindowManager#getCurrentWindowMetrics()และ WindowManager#getMaximumWindowMetrics() API
การเปลี่ยนแปลง API
- เลิกใช้งาน API ที่จะนำออกในเวอร์ชันอัลฟ่าถัดไป (Ib7cc4)
- อัปเดต ExtensionInterfaceเพื่อยอมรับการอ้างอิงถึงกิจกรรม อย่างชัดเจน (I07ded)
- ขอแนะนำ WindowMetrics API (I3ccee)
- นำเมธอดการอ่านแบบซิงโครนัสออกจาก WindowManager (I69983)
- ทำให้แพ็กเกจ ExtensionWindowBackend ได้รับการปกป้อง (Ied208)
การแก้ไขข้อบกพร่อง
- อัปเดต API ของ ExtensionInterfaceเพื่อยอมรับบริบทภาพ (I8e827)
การมีส่วนร่วมภายนอก
- รวม DeviceState และ WindowLayoutInfo เพื่อให้เข้าถึงข้อมูลได้ง่ายขึ้น (Id34f4)
เวอร์ชัน 1.0.0-alpha01
27 กุมภาพันธ์ 2020
androidx.window:window:1.0.0-alpha01 และ androidx.window:window-extensions:1.0.0-alpha01
เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha01 มีคอมมิตต่อไปนี้
นี่คือไลบรารี Window Manager รุ่นแรก
ฟีเจอร์ใหม่
- DisplayFeature: API ใหม่นี้จะระบุการหยุดชะงักในพื้นผิวจอแบนแบบต่อเนื่อง เช่น บานพับหรือรอยพับ
- DeviceState: API ใหม่นี้จะแสดงท่าทางปัจจุบันของโทรศัพท์จาก รายการท่าทางที่กำหนดไว้ (เช่น- CLOSED,- OPENED,- HALF_OPENEDฯลฯ)
