navigation3
อัปเดตล่าสุด | รุ่นที่เสถียร | รุ่นที่อาจได้รับการเผยแพร่ | รุ่นเบต้า | รุ่นอัลฟ่า |
---|---|---|---|---|
2 กรกฎาคม 2025 | - | - | - | 1.0.0-alpha05 |
การประกาศทรัพยากร Dependency
หากต้องการเพิ่มการอ้างอิงใน Navigation3 คุณต้องเพิ่มที่เก็บ Maven ของ Google ลงใน โปรเจ็กต์ อ่านข้อมูลเพิ่มเติมได้ที่ที่เก็บ Maven ของ Google
เพิ่มการอ้างอิงสำหรับอาร์ติแฟกต์ที่คุณต้องการในไฟล์ build.gradle
สำหรับแอปหรือโมดูลของคุณ
ดึงดูด
dependencies { implementation "androidx.navigation3.navigation3-runtime:1.0.0-alpha05" implementation "androidx.navigation3.navigation3-ui:1.0.0-alpha05" }
Kotlin
dependencies { implementation("androidx.navigation3.navigation3-runtime:1.0.0-alpha05") implementation("androidx.navigation3.navigation3-ui:1.0.0-alpha05") }
ดูข้อมูลเพิ่มเติมเกี่ยวกับการพึ่งพาได้ที่เพิ่มการพึ่งพาบิลด์
ความคิดเห็น
ความคิดเห็นของคุณจะช่วยให้ Jetpack ทำงานได้ดียิ่งขึ้น โปรดแจ้งให้เราทราบหากพบปัญหาใหม่หรือมี ไอเดียในการปรับปรุงไลบรารีนี้ โปรดดูปัญหาที่มีอยู่ ในไลบรารีนี้ก่อนสร้างปัญหาใหม่ คุณสามารถโหวตปัญหาที่มีอยู่ได้โดย คลิกปุ่มดาว
ดูข้อมูลเพิ่มเติมได้ในเอกสารประกอบของเครื่องมือติดตามปัญหา
ไม่มีบันทึกประจำรุ่นสำหรับอาร์ติแฟกต์นี้
รุ่น 1.0
เวอร์ชัน 1.0.0-alpha05
2 กรกฎาคม 2025
androidx.navigation3:navigation3-*:1.0.0-alpha05
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha05 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลงลักษณะการทำงาน
- ตอนนี้สถานะของ
NavEntry
จะอิงตามรายการตกแต่งปัจจุบันที่ส่งไปยังNavDisplay
อย่างเคร่งครัด ซึ่งหมายความว่าควรสลับ Decorator ตามสแต็กย้อนกลับในกรณีที่มีสแต็กย้อนกลับหลายรายการเพื่อรักษาสถานะของ NavEntry ในสแต็กย้อนกลับ ไม่เช่นนั้น ระบบจะล้างสถานะราวกับว่ามีการป๊อปรายการ (แทนที่จะเป็นการสลับ) (I7a759, b/428033667)
เวอร์ชัน 1.0.0-alpha04
18 มิถุนายน 2025
androidx.navigation3:navigation3-*:1.0.0-alpha04
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha04 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- ตอนนี้
NavEntry.content
เป็นแบบส่วนตัวแล้ว หากต้องการเรียกใช้NavEntry
เนื้อหา ให้เรียกใช้NavEntry.Content()
API ใหม่ซึ่งไม่จำเป็นต้องใช้พารามิเตอร์key
ในการเรียกใช้ (Icd0fd, b/420991203) - ตอนนี้
NavEntry.key
เป็นฟิลด์ส่วนตัวแล้วNavEntry
และสถานะที่เกี่ยวข้องควรระบุโดยฟิลด์contentKey
ใหม่ซึ่งสร้างจาก LambdacontentKeyFactory
ใหม่และค่าเริ่มต้นเป็นแฮชที่บันทึกได้ซึ่งสร้างจากNavEntry.key
(I81a6c, b/422001357, b/420991203 I2d7d4, b/420991203, b/422841812)
การเปลี่ยนแปลงการขึ้นต่อกัน
- ตอนนี้ Navigation3 ขึ้นอยู่กับอาร์ติแฟกต์
androidx.navigationevent.compose
ใหม่แล้ว
เวอร์ชัน 1.0.0-alpha03
4 มิถุนายน 2025
androidx.navigation3:navigation3-*:1.0.0-alpha03
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha03 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
Navigation3
จะไม่ล้างสถานะ Decorator สำหรับbackStacks
ที่มีการสลับออกและแทนที่ด้วยอินสแตนซ์backStack
อื่นอีกต่อไป (I28a42, b/415076044)
เวอร์ชัน 1.0.0-alpha02
23 พฤษภาคม 2025
androidx.navigation3:navigation3-*:1.0.0-alpha02
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha02 มีการคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหาเกี่ยวกับ
SavedStateNavEntryDecorator
ซึ่งทำให้เกิดการชนกันสำหรับคลาสข้อมูลต่างๆ ที่มีค่าพร็อพเพอร์ตี้เดียวกัน (b/418070648, Iff4775) - แก้ไขปัญหาคลาสที่ขาดหายไปซึ่งอาจทำให้เกิดข้อขัดข้องเมื่อเรียกใช้โดยไม่ได้ประกาศการอ้างอิงที่ชัดเจน (b/419049149, I4b4ed)
เวอร์ชัน 1.0.0-alpha01
20 พฤษภาคม 2025
androidx.navigation3:navigation3-*:1.0.0-alpha01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha01 มีการเปลี่ยนแปลงเหล่านี้
ฟีเจอร์ใหม่
Navigation3 เป็นไลบรารีการนำทางใหม่ที่สร้างขึ้นเพื่อจัดการการนำทางในแอป Jetpack Compose โดยเฉพาะ อาร์ติแฟกต์ androidx.navigation3.runtime
เป็นส่วนประกอบพื้นฐาน ส่วนอาร์ติแฟกต์ androidx.navigation3.ui
จะเป็นเลเยอร์ UI ผ่าน NavDisplay
API นักพัฒนาแอปสามารถระบุสถานะของตนเองโดยตรงไปยังฟังก์ชันที่ใช้ร่วมกันได้ของ NavDisplay
ซึ่งจะเปลี่ยนเนื้อหาตามการเปลี่ยนแปลงในสถานะของนักพัฒนาแอป
@Serialiable object Home : NavKey
@Serialiable object Chat : NavKey
val backStack = rememberNavBackStack(Home)
NavDisplay(backStack, entryProvider = entryProvider {
entry<Home> {
Column {
Text(“Home”)
Button(onClick = { backStack.add(Chat) } ) {
Text(“Go to Chat”)
}
}
}
entry<Chat> { /* My Composable Content */ }
})
ดูข้อมูลเพิ่มเติมได้ที่คู่มือ Navigation3