navigationevent

  
ไลบรารีเหตุการณ์การนำทางมี API ที่ใช้ KMP เป็นอันดับแรกสำหรับการจัดการการกดย้อนกลับของระบบ รวมถึงการกดย้อนกลับแบบคาดเดา
อัปเดตล่าสุด รุ่นที่เสถียร รุ่นที่อาจได้รับการเผยแพร่ รุ่นเบต้า เวอร์ชันอัลฟ่า
18 มิถุนายน 2025 - - - 1.0.0-alpha03

การประกาศทรัพยากร Dependency

หากต้องการเพิ่มการอ้างอิง navigationevent คุณต้องเพิ่มที่เก็บ Maven ของ Google ลงในโปรเจ็กต์ อ่านข้อมูลเพิ่มเติมในที่เก็บ Maven ของ Google

เพิ่มการอ้างอิงสำหรับอาร์ติแฟกต์ที่ต้องการในไฟล์ build.gradle สำหรับแอปหรือโมดูล

Groovy

dependencies {
    implementation "androidx.navigationevent:navigationevent:1.0.0-alpha03"
}

Kotlin

dependencies {
    implementation("androidx.navigationevent:navigationevent:1.0.0-alpha03")
}

ดูข้อมูลเพิ่มเติมเกี่ยวกับการพึ่งพาได้ที่เพิ่มการพึ่งพิงบิวด์

ความคิดเห็น

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

สร้างปัญหาใหม่

ดูข้อมูลเพิ่มเติมได้ที่เอกสารประกอบของเครื่องมือติดตามปัญหา

ไม่มีบันทึกประจำรุ่นสำหรับอาร์ติแฟกต์นี้

รุ่น 1.0

เวอร์ชัน 1.0.0-alpha03

18 มิถุนายน 2025

androidx.navigationevent:navigationevent-*:1.0.0-alpha03 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0-alpha03 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เปิดตัวโมดูล navigationevent-compose ใหม่เพื่อรองรับฟีเจอร์ Jetpack Compose ในไลบรารี navigationevent (980d78)
  • NavigationEvent Compose ได้เพิ่มการคอมโพสิชันในเครื่อง LocalNavigationEventDispatcherOwner รายการใหม่ โดยจะแสดงผลค่าที่อนุญาตค่า Null เพื่อให้ระบุได้ดีขึ้นว่าค่านั้นพร้อมใช้งานในองค์ประกอบปัจจุบันหรือไม่ ตอนนี้ NavigationEventHandler จะแสดงข้อผิดพลาดหากไม่พบเจ้าของที่แท้จริง (62ffda)
  • NavigationEvent Compose ได้เพิ่ม NavigationEventHandler Composable ใหม่เพื่อจัดการเหตุการณ์ (ท่าทางสัมผัสเพื่อกลับโดยประมาณ) ซึ่งจะระบุ Flow ของออบเจ็กต์ NavigationEvent ที่ต้องรวบรวมใน Lambda ที่ระงับที่คุณระบุ c42ba6
NavigationEventHandler { progress: Flow<NavigationEvent> ->
  // This block is executed when the back gesture begins.
  try {
    progress.collect { backEvent ->
      // Handle gesture progress updates here.
    }
    // This block is executed if the gesture completes successfully.
  } catch (e: CancellationException) {
    // This block is executed if the gesture is cancelled
    throw e
  } finally {
    // This block is executed either the gesture is completed or cancelled
  }
}

การเปลี่ยนแปลง API

  • ตอนนี้NavigationEventCallbackแต่ละรายการจะลงทะเบียนกับNavigationEventDispatcherได้เพียงรายการเดียวในแต่ละครั้ง การเพิ่มNavigationEventCallbackไปยังตัวกระจายหลายรายการจะทำให้เกิดIllegalStateException โปรดทราบว่าลักษณะการทํางานนี้แตกต่างจาก OnBackPressedDispatcher ซึ่งอนุญาตให้ใช้ตัวจัดเตรียมหลายราย (e82c19)
  • เปลี่ยน isPassThrough เป็น val เพื่อป้องกันการเปลี่ยนแปลงระหว่างการนําทาง ซึ่งอาจทําให้การส่งของ NavigationEvent หยุดชะงัก (I0b287)

เวอร์ชัน 1.0.0-alpha02

4 มิถุนายน 2025

androidx.navigationevent:navigationevent-*:1.0.0-alpha02 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0-alpha02 มีการคอมมิตเหล่านี้

การเปลี่ยนแปลง API

  • แทนที่ตัวสร้างรองของ NavigationEventDispatcher ด้วยอาร์กิวเมนต์เริ่มต้น (I716a0)
  • นำพร็อพเพอร์ตี้ลําดับความสําคัญออกจาก NavigationEventCallback ส่งลําดับความสําคัญไปยัง NavigationEventDispatcher.addCallback() แทน (I13cae)

การแก้ไขข้อบกพร่อง

  • แก้ไข ConcurrentModificationException ที่อาจเกิดขึ้นเมื่อเรียกใช้ NavigationEventCallback.remove() เนื่องจากการแก้ไขรายการที่ปิดได้ภายในพร้อมกัน (b/420919815)

เวอร์ชัน 1.0.0-alpha01

20 พฤษภาคม 2025

androidx.navigationevent:navigationevent-*:1.0.0-alpha01 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0-alpha01 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • ไลบรารี androidx.navigationevent มี API ที่ใช้ KMP เป็นอันดับแรกสำหรับการจัดการการย้อนกลับของระบบ รวมถึงการย้อนกลับแบบคาดการณ์ NavigationEventDispatcher ทำหน้าที่เป็น API ทั่วไปสำหรับการลงทะเบียนอินสแตนซ์ NavigationEventCallback อย่างน้อย 1 รายการเพื่อรับเหตุการณ์การย้อนกลับของระบบ
  • เลเยอร์นี้อยู่ต่ำกว่า API ที่เผยแพร่ไปก่อนหน้านี้ใน androidx.activity และมีจุดประสงค์เพื่อเป็นทางเลือกที่ยึดถือหลักการน้อยกว่าสำหรับการใช้ Activity API ในคอมโพเนนต์ระดับที่สูงขึ้น หรือการใช้ API ของเฟรมเวิร์ก Android OnBackInvokedDispatcher โดยตรง เราได้เขียน API ของ androidx.activity ขึ้นใหม่โดยอิงตาม Navigation Event API ซึ่งเป็นส่วนหนึ่งของ Activity 1.12.0-alpha01