জেটপ্যাক এক্সআরের জন্য আরকোর
সর্বশেষ আপডেট | স্থিতিশীল রিলিজ | রিলিজ প্রার্থী | বিটা রিলিজ | আলফা রিলিজ |
---|---|---|---|---|
২২ অক্টোবর, ২০২৫ | - | - | - | ১.০.০-আলফা০৭ |
নির্ভরতা ঘোষণা করা
Jetpack XR-এর জন্য ARCore-এর উপর নির্ভরতা যোগ করতে, আপনার প্রোজেক্টে Google Maven রিপোজিটরি যোগ করতে হবে। আরও তথ্যের জন্য Google-এর Maven রিপোজিটরি পড়ুন।
আপনার অ্যাপ বা মডিউলের জন্য build.gradle
ফাইলে আপনার প্রয়োজনীয় আর্টিফ্যাক্টের জন্য নির্ভরতা যোগ করুন:
খাঁজকাটা
dependencies { implementation "androidx.xr.arcore:arcore:1.0.0-alpha07" // Optional dependencies for asynchronous conversions implementation "androidx.xr.arcore:arcore-guava:1.0.0-alpha07" implementation "androidx.xr.arcore:arcore-rxjava3:1.0.0-alpha07" }
কোটলিন
dependencies { implementation("androidx.xr.arcore:arcore:1.0.0-alpha07") // Optional dependencies for asynchronous conversions implementation("androidx.xr.arcore:arcore-guava:1.0.0-alpha07") implementation("androidx.xr.arcore:arcore-rxjava3:1.0.0-alpha07") }
নির্ভরতা সম্পর্কে আরও তথ্যের জন্য, বিল্ড নির্ভরতা যোগ করুন দেখুন।
প্রতিক্রিয়া
আপনার মতামত জেটপ্যাককে আরও উন্নত করতে সাহায্য করবে। আপনি যদি নতুন সমস্যা আবিষ্কার করেন অথবা এই লাইব্রেরি উন্নত করার জন্য কোন ধারণা থাকে তাহলে আমাদের জানান। নতুন একটি তৈরি করার আগে দয়া করে এই লাইব্রেরিতে বিদ্যমান সমস্যাগুলি একবার দেখে নিন। আপনি তারকা বোতামে ক্লিক করে বিদ্যমান সমস্যাটিতে আপনার ভোট যোগ করতে পারেন।
আরও তথ্যের জন্য ইস্যু ট্র্যাকার ডকুমেন্টেশন দেখুন।
সংস্করণ 1.0
সংস্করণ 1.0.0-alpha07
২২ অক্টোবর, ২০২৫
androidx.xr.arcore:arcore-*:1.0.0-alpha07
প্রকাশিত হয়েছে। সংস্করণ 1.0.0-alpha07-এ এই কমিটগুলি রয়েছে।
বাগ ফিক্স
-
:xr:arcore:arcore-openxr
:xr:arcore:arcore
( I47315 , b/446999229 ) এর সাথে একটি বাস্তবায়ন নির্ভরতা হিসেবে যোগ করা হয়েছে।
সংস্করণ 1.0.0-alpha06
২৪ সেপ্টেম্বর, ২০২৫
androidx.xr.arcore:arcore-*:1.0.0-alpha06
প্রকাশিত হয়েছে। সংস্করণ 1.0.0-alpha06-এ এই কমিটগুলি রয়েছে।
API পরিবর্তনগুলি
-
ARCore
এর জন্য টেস্টিং সাপোর্টxr:arcore:arcore-testing
মডিউলে স্থানান্তরিত হয়েছে। ( I25469 ) - রেন্ডারিংয়ের উদ্দেশ্যে অ্যাপ্লিকেশনগুলিকে ডিভাইসের ভঙ্গি এবং প্রদর্শন কনফিগারেশন পুনরুদ্ধার করার অনুমতি দেওয়ার জন্য
ArDevice
এবংRenderViewpoint
যোগ করা হচ্ছে। ( Ib7e3f ) -
HAND_JOINT_TYPE_
প্রিফিক্স দিয়েHandJointType
enums এর নাম পরিবর্তন করুন। ( I3f7cd ) -
HandJointType
xr:arcore:arcore
xr:runtime:runtime
arcore:arcore এ সরানো হয়েছে। ( Iadb9c , b/409058039 ) -
Hand.State
এখন একটিjava.nio.FloatBuffer
প্রকাশ করে যার জয়েন্ট পোজগুলি এমন একটি ফর্ম্যাটে রয়েছে যা পারফরম্যান্স-ভিত্তিক অ্যাপ্লিকেশনগুলিতে সহজে অ্যাক্সেসের অনুমতি দেয়। ( I55e27 )
সংস্করণ 1.0.0-alpha05
৩০ জুলাই, ২০২৫
androidx.xr.arcore:arcore:1.0.0-alpha05
, androidx.xr.arcore:arcore-guava:1.0.0-alpha05
, এবং androidx.xr.arcore:arcore-rxjava3:1.0.0-alpha05
প্রকাশিত হয়েছে। সংস্করণ 1.0.0-alpha05-এ এই কমিটগুলি রয়েছে।
নতুন বৈশিষ্ট্য
-
getPrimaryHandSide
যোগ করুন যাতে ডেভেলপার হাতের পাশের তথ্য পেতে পারে ( I270bd ) - ভূ-স্থানিক পরীক্ষা VPS প্রাপ্যতা API ( I58573 ) যোগ করুন
-
checkVpsAvailability
( Idbded ) এর জন্য ARCore API যোগ করুন - জাভা ডেভেলপারদের ব্যবহারের জন্য
:xr:arcore:arcore-rxjava3
তেstateFlowable
এক্সটেনশন ফাংশন যোগ করা হয়েছে। ( I083aa , b/427247794 )
API পরিবর্তনগুলি
- কনফিগ
*Mode
ভ্যালগুলিকে তাদের আচরণ প্রতিফলিত করার জন্য পুনঃনামকরণ করা হয়েছে। ( I6d247 , b/414648065 ) - প্রধান ARCore আর্টিফ্যাক্ট (xr:arcore:arcore) তে শুধুমাত্র Kotlin-স্টাইলের অ্যাসিঙ্ক API থাকবে। জাভা ডেভেলপাররা সামঞ্জস্যপূর্ণ API অ্যাক্সেস করার জন্য
xr:arcore:arcore-rxjava3
লাইব্রেরির উপর নির্ভর করতে পারেন। ( Ia525e , b/422794329 ) - প্রধান ARCore আর্টিফ্যাক্ট (
xr:scenecore:scenecore
) তে শুধুমাত্র Kotlin-স্টাইলের অ্যাসিঙ্ক API থাকবে। জাভা ডেভেলপাররা সামঞ্জস্যপূর্ণ API অ্যাক্সেস করার জন্যxr:arcore:arcore-guava
লাইব্রেরির উপর নির্ভর করতে পারেন। ( Iffcb4 , b/422773524 ) - জাভা ডেভেলপারদের ব্যবহারের জন্য
Anchor.persistAsync()
AnchorGuava
তে যোগ করা হয়েছে। ( I4af1c , b/425984631 ) - জাভা ডেভেলপারদের ব্যবহারের জন্য
Earth.createAnchorOnSurfaceAsync(Session, Double, Double, Double, Quaternion, Surface)
EarthGuava
তে যোগ করা হয়েছে। ( I66357 , b/425992992 ) - জাভা ডেভেলপাররা
GltfModel.createAsync
এGltfModel.kt
এর জন্য এক্সটেনশন ফাংশন ব্যবহার করবে।GltfModel
এ Async ফাংশন মুছে ফেলা হবে। ( I0af60 ) - এই লাইব্রেরিটি এখন JSpecify nullness annotations ব্যবহার করে, যা টাইপ-ব্যবহারের। সঠিক ব্যবহার জোরদার করার জন্য Kotlin ডেভেলপারদের নিম্নলিখিত কম্পাইলার আর্গুমেন্ট ব্যবহার করা উচিত:
-Xjspecify-annotations=strict
(এটি Kotlin কম্পাইলারের 2.1.0 সংস্করণ থেকে শুরু করে ডিফল্ট) ( Ia8420 , b/326456246 ) - জাভা ডেভেলপারদের ব্যবহারের জন্য
:xr:arcore:arcore-rxjava3
তেsubscribeAsFlowable
এক্সটেনশন ফাংশন যোগ করা হয়েছে। ( Id3e49 , b/427277298 )
সংস্করণ 1.0.0-alpha04
৭ মে, ২০২৫
androidx.xr.arcore:arcore:1.0.0-alpha04
প্রকাশিত হয়েছে। সংস্করণ 1.0.0-alpha04-এ এই কমিটগুলি রয়েছে।
API পরিবর্তনগুলি
- Kotlin 2.0 দিয়ে মুক্তিপ্রাপ্ত প্রকল্পগুলির জন্য KGP 2.0.0 বা তার নতুন সংস্করণ ব্যবহার করা প্রয়োজন। ( Idb6b5 )
-
TrackingState
এবংHandJointType
ARCore থেকে Runtime-এ সরানো হয়েছে। -
Hand.State.isActive (boolean)
Hand.State.trackingState (androidx.xr.runtime.TrackingState)
এ পরিবর্তন করা হয়েছে। - UUID অবৈধ হলে
Anchor.load
Anchor.AnchorLoadInvalidUuid
প্রদান করে।
সংস্করণ 1.0.0-alpha03
২৬ ফেব্রুয়ারী, ২০২৫
androidx.xr.arcore:arcore:1.0.0-alpha03
শেষ আলফার পর থেকে কোনও উল্লেখযোগ্য পরিবর্তন ছাড়াই প্রকাশিত হয়েছে। সংস্করণ 1.0.0-alpha03-এ এই কমিটগুলি রয়েছে।
সংস্করণ 1.0.0-alpha02
১২ ফেব্রুয়ারী, ২০২৫
androidx.xr.arcore:arcore:1.0.0-alpha02
প্রকাশিত হয়েছে। সংস্করণ 1.0.0-alpha02-এ এই কমিটগুলি রয়েছে।
নতুন বৈশিষ্ট্য
- হাত ট্র্যাকিং সাপোর্ট যোগ করা হয়েছে। ট্র্যাকিং তথ্য অ্যাক্সেস করতে
Hand.left
এবংHand.right
ব্যবহার করুন। - যেসব API একটি অ্যাঙ্কর তৈরি করে (
Anchor.create
,Anchor.load
,Plane.createAnchor
) এখন সবগুলিAnchorCreateResult
ফেরত দেয় এবং সঠিকভাবেAnchorCreateResourcesExhausted
প্রয়োগ করে।
বাগ সংশোধন
- সেশন আপডেট থ্রেডের রেস কন্ডিশনের কারণে
Anchor.detach
আর মারাত্মক ক্র্যাশ ঘটায় না। - এমুলেটরে চলার সময়
Anchor.create
আরও স্থিতিশীল থাকে
সংস্করণ 1.0.0-alpha01
১২ ডিসেম্বর, ২০২৪
androidx.xr.arcore:arcore-* 1.0.0-alpha01
প্রকাশিত হয়েছে।
প্রাথমিক প্রকাশের বৈশিষ্ট্য
বিদ্যমান ARCore লাইব্রেরি দ্বারা অনুপ্রাণিত হয়ে, ARCore for Jetpack XR লাইব্রেরি বাস্তব জগতের সাথে ডিজিটাল কন্টেন্ট মিশ্রিত করার ক্ষমতা প্রদান করে। এই লাইব্রেরিতে মোশন ট্র্যাকিং, স্থায়ী অ্যাঙ্কর, হিট টেস্টিং এবং সিমেন্টিক লেবেলিং (উদাহরণস্বরূপ, মেঝে, দেয়াল এবং টেবিলটপ) সহ প্লেন সনাক্তকরণ অন্তর্ভুক্ত রয়েছে। Jetpack XR এর জন্য ARCore এর সাথে কাজ করার বিষয়ে আরও জানতে ডেভেলপার গাইডটি দেখুন।
Session
: জেটপ্যাক এক্সআরের জন্য এআরকোর তার কার্যকারিতা শক্তিশালী করার জন্য জেটপ্যাক এক্সআর রানটাইম ব্যবহার করে। জেটপ্যাক এক্সআরের জন্য বেশিরভাগ এআরকোর এপিআইয়ের সাথে ইন্টারঅ্যাক্ট করার জন্য আপনি একটি সেশন ব্যবহার করবেন, তাই দয়া করে এর ডকুমেন্টেশনটি একবার দেখুন।Plane
: আপনার চারপাশের জগৎ বোঝার জন্য প্লেন ব্যবহার করুন। প্রতিটি প্লেনের একটিLabel
থাকে যা এটিকে অর্থপূর্ণভাবে বর্ণনা করে। আপনি সর্বশেষ সনাক্ত করা প্লেন সম্পর্কে অবহিত হতেsubscribe
ব্যবহার করতে পারেন অথবা একটি নির্দিষ্ট প্লেনের পরিবর্তন সম্পর্কে অবহিত হতেstate
।Anchor
: একটি ভার্চুয়াল বস্তু এবং একটি বাস্তব জগতের অবস্থানের মধ্যে একটি লিঙ্ক। অ্যাঙ্করগুলি মহাকাশের একটি নির্দিষ্ট স্থানে (create
ব্যবহার করে) অথবা একটিTrackable
(createAnchor
ব্যবহার করে) সংযুক্ত করা যেতে পারে।অ্যাঙ্করগুলি বিভিন্ন সেশনে পুনঃব্যবহার করা যেতে পারে। আপনি এগুলি সংরক্ষণের জন্য
persist
, তালিকাভুক্ত করার জন্যgetPersistedAnchorUuids
এবং পুনরুদ্ধারের জন্যload
ব্যবহার করতে পারেন। যখন এগুলি আর ব্যবহার করা বন্ধ হয়ে যাবে তখন নিশ্চিত করুন যে আপনি এগুলিকেunpersist
।Jetpack XR এবং Jetpack SceneCore-এর জন্য ARCore-এর মধ্যে অ্যাঙ্করগুলি আন্তঃব্যবহারযোগ্য। আপনি একটি অ্যাঙ্কর ব্যবহার করে একটি
AnchorEntity
তৈরি করতে পারেন অথবা, যদি আপনার একটি বিদ্যমান AnchorEntity থাকে, তাহলে আপনিgetAnchor
ব্যবহার করে এর ব্যাকিং অ্যাঙ্করটি পুনরুদ্ধার করতে পারেন।hitTest
ব্যবহার করে ব্যবহারকারীদের সাথে স্বাভাবিক ইন্টারঅ্যাকশন প্রদান করে। একটি hitTest কোন কন্টেন্টকে ছেদ করে তা নির্ধারণ করতে এবং সেই অবস্থান থেকে একটিAnchor
তৈরি করতে একটিRay
ব্যবহার করে। একটিInputEvent
থেকে একটি hitTest পরিচালনা করার কথা বিবেচনা করুন।
জ্ঞাত সমস্যা
unpersist
কল করা এবংgetPersistedAnchorUuids
দ্বারা প্রদত্ত ফলাফল থেকে এর UUID সরানোর মধ্যে কিছুটা বিলম্ব হতে পারে।create
যাচাই করবে না যে সিস্টেমে নতুন অ্যাঙ্কর ফেরত দেওয়ার জন্য পর্যাপ্ত রিসোর্স আছে। অতিরিক্ত পরিমাণে অ্যাঙ্কর তৈরি করলে ক্র্যাশ হতে পারে।পূর্বে স্থায়ী এবং অস্থায়ী থাকা অ্যাঙ্করটি বর্তমানে স্থায়ী করা হচ্ছে না।
এমুলেটরে ব্যবহার সমর্থিত, তবে আচরণটি প্রকৃত ডিভাইসে চালানোর সময় স্থিতিশীল নাও হতে পারে। বিশেষ করে, কল টু
create
একটি নেটিভ কোড ত্রুটির কারণে ব্যর্থ হতে পারে এবং তাৎক্ষণিকভাবে কার্যকলাপটি বন্ধ করে দিতে পারে।কিছু পরিস্থিতিতে, "Anchor was not persisted" বার্তা সহ
persist
কল করার সময়RuntimeException
ভুলবশত থ্রো করা হতে পারে। সেই পরিস্থিতিতে, ফাংশনটি এখনও সফল হবে এবং anchorটি persisted থাকবে। আমরা সমাধান হিসেবেtry
block ব্যবহার করেpersist
জন্য কলটি র্যাপ করার পরামর্শ দিচ্ছি।
এই পৃষ্ঠার কন্টেন্ট ও কোডের নমুনাগুলি Content License-এ বর্ণিত লাইসেন্সের অধীনস্থ। Java এবং OpenJDK হল Oracle এবং/অথবা তার অ্যাফিলিয়েট সংস্থার রেজিস্টার্ড ট্রেডমার্ক।
2025-10-22 UTC-তে শেষবার আপডেট করা হয়েছে।