ยกระดับประสบการณ์การใช้งานแอปด้วยการรับรู้โดยใช้ ARCore สำหรับ Jetpack XR

อุปกรณ์ XR ที่รองรับ
คำแนะนำนี้จะช่วยคุณสร้างประสบการณ์การใช้งานสำหรับอุปกรณ์ XR ประเภทนี้
ชุดหูฟัง XR
แว่นตา XR แบบใช้สาย
แว่นตาที่มีจอแสดงผล
และเสียง

ARCore สำหรับ Jetpack XR มอบความสามารถในการรับรู้ที่มีประสิทธิภาพเพื่อให้แอปของคุณเข้าใจโลกจริงผ่าน API ที่หลากหลาย API บางรายการจะช่วยคุณปรับปรุงประสบการณ์ที่สมจริงสำหรับอุปกรณ์ต่างๆ เช่น ชุดหูฟัง XR และแว่นตา XR แบบใช้สาย บางรายการจะช่วยคุณปรับปรุงประสบการณ์การใช้งานเทคโนโลยีความจริงเสริม (AR) สำหรับอุปกรณ์ต่างๆ เช่น แว่นตา AI และบางรายการจะช่วยคุณปรับปรุงประสบการณ์การใช้งานแอปสำหรับอุปกรณ์ Android XR ทุกประเภท

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

เพิ่มทรัพยากร Dependency ของไลบรารี

ก่อนเริ่มใช้ฟีเจอร์การรับรู้ในแอป XR ให้เพิ่มทรัพยากร Dependency ที่จำเป็น โดยขึ้นอยู่กับประเภทของประสบการณ์การใช้งานแอปที่คุณกำลังปรับปรุงด้วย AR

เข้าถึงเซสชัน

ฟีเจอร์การรับรู้ใน ARCore สำหรับ Jetpack XR อาศัย Session ซึ่งใช้รันไทม์ Jetpack XR

วิธีที่แอปควรเข้าถึงเซสชันจะขึ้นอยู่กับประเภทของประสบการณ์การใช้งานแอปที่คุณกำลังปรับปรุงด้วยฟีเจอร์การรับรู้ ดังนี้

สร้างเซสชันโดยใช้ Jetpack XR Runtime

หากต้องการสร้างเซสชัน ให้ส่ง Context ไปยังเมธอด create() Context นี้อาจเป็นActivityในอุปกรณ์ XR ที่สมจริงหรืออุปกรณ์เคลื่อนที่ หรือบริบทที่ฉายในแว่นตาอัจฉริยะ

การสร้างเซสชัน ARCore อาจเป็นงานที่มีค่าใช้จ่ายสูง และควรประมวลผลในเบื้องหลัง ดังที่แสดงในตัวอย่างต่อไปนี้

lifecycleScope.launch {
    when (val result = Session.create(context)) {
        is SessionCreateSuccess -> {
            val xrSession = result.session
            // ...
        }
        else ->
            TODO(/* A different unhandled exception was thrown. */)
    }
}

ฟังก์ชัน create() สามารถใช้พารามิเตอร์ LifecycleOwner ที่ไม่บังคับ ซึ่งช่วยให้ LifecycleOwner อื่นจัดการวงจรของเซสชันได้ LifecycleOwner ต้องเริ่มต้นและสิ้นสุดวงจรภายในขอบเขตของบริบทที่ระบุ ไม่เช่นนั้น Session อาจเสี่ยงต่อการรั่วไหล

กำหนดค่าเซสชัน

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

ขั้นตอนถัดไป

หลังจากที่แอปมีเซสชันแล้ว ให้สำรวจวิธีที่คุณสามารถใช้เซสชันเพื่อปรับปรุงประสบการณ์การใช้งานแอปสำหรับอุปกรณ์ XR ต่างๆ ดังนี้