Jetpack XR-এর জন্য ARCore

পারসেপশন ক্ষমতার সাহায্যে ডিজিটাল কন্টেন্টকে বাস্তব জগতে নিয়ে আসুন।
লেটেস্ট আপডেট স্টেবল রিলিজ রিলিজ ক্যান্ডিডেট বিটা রিলিজ আলফা রিলিজ
০৭ অক্টোবর, ২০২৬ - 1.0.0-rc02 - -

ডিপেন্ডেন্সি ঘোষণা করা

Jetpack XR-এর জন্য ARCore-এর উপর নির্ভরতা যোগ করতে, আপনাকে অবশ্যই নিজের প্রোজেক্টে Google Maven রিপোজিটরি যোগ করতে হবে। আরও তথ্যের জন্য Google-এর Maven রিপোজিটরি পড়ুন।

আপনার অ্যাপ বা মডিউলের জন্য build.gradle ফাইলে প্রয়োজনীয় আর্টিফ্যাক্টের জন্য ডিপেন্ডেন্সি যোগ করুন:

গ্রোভি

dependencies {
    implementation "androidx.xr.arcore:arcore:1.0.0-rc01"
}

কোটলিন

dependencies {
    implementation("androidx.xr.arcore:arcore:1.0.0-rc01")
}

নির্ভরতা সম্পর্কে আরও তথ্যের জন্য, বিল্ড নির্ভরতা যোগ করুন দেখুন।

মতামত

আপনার মতামত Jetpack-কে আরও ভালো করে তুলতে সাহায্য করে। আপনি যদি নতুন কোনও সমস্যা খুঁজে পান বা এই লাইব্রেরি উন্নত করার জন্য কোনও আইডিয়া থাকে, তাহলে আমাদের জানান। নতুন লাইব্রেরি তৈরি করার আগে এই লাইব্রেরিতে আগে থেকে থাকা সমস্যা দেখে নিন। আপনি তারকাচিহ্ন বোতামে ক্লিক করে আগে থেকে থাকা কোনও সমস্যাতে আপনার ভোট যোগ করতে পারবেন।

নতুন সমস্যা তৈরি করুন

আরও তথ্যের জন্য ইস্যু ট্র্যাকার ডকুমেন্টেশন দেখুন।

ভার্সন ১.০

ভার্সন 1.0.0-rc02

০৭ অক্টোবর, ২০২৬

androidx.xr.arcore:arcore-*:1.0.0-rc02 রিলিজ করা হয়েছে। 1.0.0-rc02 ভার্সনে এইসব কমিট রয়েছে।

সমস্যার সমাধান

  • অগমেন্টেড ইমেজ ট্র্যাকিং কাজ না করলে OpenXrRuntime সেশন কনফিগার করতে না পারার সমস্যা সমাধান করা হয়েছে। (I8b9759)
  • এগুলি সহ একাধিক সমস্যার সমাধান করা হয়েছে: XrInstanceManager-এ applicationContext ব্যবহার করে মেমরি ম্যানেজমেন্ট উন্নত করা হয়েছে, Session ও Scene ক্যাশিং মেকানিজম সহজ করে সম্ভাব্য লাইফসাইকেল-সম্পর্কিত সমস্যার সমাধান করা হয়েছে এবং থ্রেড-সেফ ক্লিন-আপ রেজিস্ট্রেশন ও এক্সপ্লিসিট ডিসপোজাল নিশ্চিত করতে ReferenceCleaner উন্নত করা হয়েছে। (Id0b76c)

ভার্সন 1.0.0-rc01

৯ সেপ্টেম্বর, ২০২৬

androidx.xr.arcore:arcore-*:1.0.0-rc01 রিলিজ করা হয়েছে। ভার্সন 1.0.0-rc01-এ এইসব কমিট রয়েছে।

ভার্সন 1.0.0-beta02

১২ আগস্ট, ২০২৬

androidx.xr.arcore:arcore-*:1.0.0-beta02 রিলিজ করা হয়েছে। ভার্সন 1.0.0-beta02-এ এইসব কমিট রয়েছে।

সমস্যার সমাধান

  • OpenXR অ্যাঙ্কর পারসিস্টেন্সে কনকারেন্সি সংক্রান্ত সমস্যার সমাধান করুন। (I15c8b)
  • ডিবাগ করার জন্য আরও ক্লাসে toString() প্রয়োগ করা হয়েছে। (I587e8)

ভার্সন 1.0.0-beta01

১৫ জুলাই, ২০২৬

androidx.xr.arcore:arcore-*:1.0.0-beta01 রিলিজ করা হয়েছে। ভার্সন 1.0.0-beta01-এ এইসব কমিট রয়েছে।

API-তে পরিবর্তন

  • দুটি মডিফায়ারের (I7fb0f, b/496257436, b/519672992) পরিবর্তে একটি ResizePolicy ব্যবহার করার জন্য রিসাইজ করা যায় এমন মডিফায়ার আপডেট করা হয়েছে
  • movePolicy param-এর সাথে মুভেবল ওভারলোড যোগ করা হয়েছে এবং transformingMovable ও movable সরিয়ে দেওয়া হয়েছে (Ic88c1, b/481781189)
  • পাবলিক API সারফেস থেকে TrackingState.TRACKING_DEGRADED সরিয়ে দেওয়া হয়েছে এবং এর পরিবর্তে ম্যাপ রানটাইম ডিগ্রেডেড স্টেটকে PAUSED হিসেবে ম্যাপ করা হয়েছে। স্ট্রিং কনভার্সন ও রানটাইম কনভার্সনের জন্য int ভ্যালুর পরিবর্তে enum ব্যবহার করতে TrackingState আপডেট করুন। (I3eb5b, b/524326338)
  • Session.create-কে সাসপেন্ড ফাংশনে কনভার্ট করা হয়েছে। (I5d27f)
  • ProjectedPermissionsResultContract (I141d5, b/515699436) বাতিল করা হয়েছে
  • AnchorEntity আপডেট করে AnchorSpace করা হয়েছে (Ifa95e, b/513619219)

ভার্সন 1.0.0-alpha15

১৭ জুন, ২০২৬

androidx.xr.arcore:arcore-*:1.0.0-alpha15 রিলিজ করা হয়েছে। 1.0.0-alpha15 ভার্সনে এইসব কমিট আছে।

API-তে পরিবর্তন

  • HitResult.createAnchor সরানো হয়েছে। ফলাফলের ট্র্যাক করা যায় এমন অংশটি যদি Anchorable হয়, তাহলে ডেভেলপাররা Anchorable-এর createAnchor ফাংশনে হিট পজিশন সাপ্লাই করে HitResult-এর প্রতিনিধিত্বকারী অ্যাঙ্কর তৈরি করতে পারেন। (Ia851e)
  • AnchorUnsupportedObject সরানো হয়েছে। JXR ARCore রানটাইম আর এটি থ্রো করে না। (Ia851e)
  • androidx.xr.arcore.Anchor ও androidx.xr.arcore.ArDevice এখন androidx.xr.arcore.Trackable প্রয়োগ করুন। (I57b65)
  • Depth.left, Depth.right ও Depth.mono এখন আর নাল হতে পারবে না (I1fc5e)
  • Face.getUserFace এখন নন-নাল (I0eac1)
  • RenderViewpoint.left, RenderViewpoint.right, RenderViewpoint.mono এখন আর নাল হতে পারে না (Icf7fa)
  • Hand.left ও Hand.right হল নন-নাল (Icef37)
  • QrCode API যোগ করা হয়েছে (Ia0bbe)

ভার্সন 1.0.0-alpha14

১৯ মে, ২০২৬

androidx.xr.arcore:arcore-*:1.0.0-alpha14 রিলিজ করা হয়েছে। 1.0.0-alpha14 ভার্সনে এইসব কমিট রয়েছে।

API-তে পরিবর্তন

  • GeospatialMode.SPATIAL-এর পরিবর্তে GeospatialMode.VPS_AND_GPS বন্ধ করা হচ্ছে এবং একটি নতুন কম-পাওয়ার ট্র্যাকিং মোড, GeospatialMode.INERTIAL চালু করা হচ্ছে, যা শুধুমাত্র IMU এবং জিপিএস ব্যবহার করে। (I1e6cd)
  • কাস্টম অ্যাঙ্কর ব্যতিক্রম ক্লাস: AnchorInvalidUuidException, AnchorNotAuthorizedException, AnchorUnsupportedLocationException, AnchorRuntimeFailureException এবং AnchorUnsupportedObjectException এখন RuntimeException ইনস্ট্যান্স, চেক করার উদ্দেশ্যে নয়। (I9356e)
  • TestArDevice, TestAugmentableObject, TestDepthMap, TestEye, TestFace, TestGeospatial, TestHand, TestPlane, TestRenderViewpoint ও TestTrackable সহ ArCoreTestRule API যোগ করা হয়েছে (I0ad3c)
  • AnchorLoadInvalidUuid, AnchorCreateUnsupportedObject, AnchorCreateUnsupportedLocation ও AnchorCreateNotAuthorized সরিয়ে দেয়। এইসব সমস্যা এখন রানটাইমে ব্যতিক্রম হিসেবে গণ্য করা হয়। AnchorCreateIllegalState সরিয়ে দেয়। বেশিরভাগ ক্ষেত্রে এটি AnchorCreateTrackingUnavailable দিয়ে প্রতিস্থাপন করা হয়েছে। AnchorException এবং এর থেকে প্রাপ্ত ক্লাস AnchorInvalidUuidException, AnchorNotAuthorizedException, AnchorUnsupportedLocationException, AnchorRuntimeFailureException ও AnchorUnsupportedObjectException যোগ করে। (I4c4dd)

এক্সটার্নাল কন্ট্রিবিউশন

  • কাস্টম মার্কার ট্র্যাকিংয়ের জন্য AugmentedImage API যোগ করা হয়েছে (I0cf09)

ভার্সন 1.0.0-alpha13

৬ মে, ২০২৬

androidx.xr.arcore:arcore-*:1.0.0-alpha13 রিলিজ করা হয়েছে। ভার্সন 1.0.0-alpha13-এ এইসব কমিট রয়েছে।

API-তে পরিবর্তন

  • TrackingState ও VpsAvailabilityResult androidx.xr.arcore package-এ চলে গেছে এবং androidx.xr.runtime-এর ধরন এখন পুরনো হয়ে গেছে। (Ic7930, b/480462213)
  • Plane.Type-এর নাম পরিবর্তন করে PlaneType করা হয়েছে। (I8c90c, b/482675376)
  • Hand.HandSide-এর নাম পরিবর্তন করে HandSide করা হয়েছে। (Ica562, b/482675376)
  • Plane.Label-এর নাম পরিবর্তন করে PlaneLabel করা হয়েছে। (Ic6b67, b/482675376)
  • Geospatial.Surface-এর নাম পরিবর্তন করে GeospatialSurface করা হয়েছে। (I1a8be, b/482675376)
  • Geospatial.State-এর নাম পরিবর্তন করে GeospatialState করা হয়েছে। (I203fa, b/482675376)
  • NativeData API xr:runtime:runtime লাইব্রেরিতে সরানো হয়েছে। (I87954, b/494251500)
  • Session.create ও Session.configure এখন আর সম্পূর্ণ নয় এবং when স্টেটমেন্টে else ক্লজ প্রয়োজন। (I9885e, b/495805998, b/495805998)
  • androidx.xr.runtime.FieldOfView বন্ধ করে দেওয়া হয়েছে। এর পরিবর্তে androidx.xr.runtime.math.FieldOfView ব্যবহার করুন। (Ia01a0, b/480233045)
  • Orbiter-এ পজিশন, অফসেট, অফসেটটাইপ, অ্যালাইনমেন্ট ও এলিভেশনের পরিবর্তে OrbiterAnchorPoint + VolumeOffset বা OrbiterPoseProvider ব্যবহার করা হয়েছে। এছাড়াও, shouldRenderInNonSpatial প্যারামিটার সরিয়ে দেওয়া হয়েছে। ডেভেলপার যদি চান যে অরবিটার নন-স্পেশিয়ালে রেন্ডার না হোক, তাহলে তাকে অরবিটারকে একটি if স্টেটমেন্টে র‍্যাপ করতে হবে এবং SpatialCapabilities চেক করতে হবে। (I9fbb3, b/462428503)
  • মুভেবল মডিফায়ার যোগ করা হয়েছে। এইসব মডিফায়ার SpatialPanels ও SpatialExternalSurface-এর জন্য এখন ভাল কাজ করে। খুব শীঘ্রই SpatialGltfModels-এর ক্ষেত্রেও এগুলি কাজ করবে। তবে, সব SubspaceComposables-এর জন্য এগুলি ভালোভাবে কাজ করে, সেই উদ্দেশ্যেই তৈরি করা হয়েছে। (I9a3cd, b/479530787, b/478935063, b/478935063)
  • ডেভেলপারদের ArDevice.state ফ্লো অনুসরণ করে State.trackingState মনিটর করতে হবে এবং ট্র্যাকিং ফিডেলিটির উপর ভিত্তি করে তাদের অ্যাপ্লিকেশনের রেন্ডারিং বা সতর্কতা সেই অনুযায়ী অ্যাডজাস্ট করতে হবে। (Ic00f0, b/445466590)
  • HandJointType এনুম ভ্যালুর নাম পরিবর্তন করা হয়েছে। (Ifbc83, b/482670596)
  • FaceConfidenceRegion কনস্ট্যান্টের নাম পরিবর্তন করা হয়েছে। (Ia62d5, b/482670596)
  • FaceBlendShapeType কনস্ট্যান্টের নাম পরিবর্তন করা হয়েছে। (I33b8b, b/482670596)
  • CreatePoseFromGeospatialPoseErrorInternal ও CreateGeospatialPoseFromPoseErrorInternal যোগ করা হয়েছে। (I4bcf1, b/482666615)
  • DeviceTrackingMode.LAST_KNOWN-এর নাম পরিবর্তন করে SPATIAL_LAST_KNOWN করা হয়েছে (পুরনো ফলব্যাক সহ), 3DoF ট্র্যাকিংয়ের জন্য INERTIAL_LAST_KNOWN যোগ করা হয়েছে এবং TrackingState-এ TRACKING_DEGRADED যোগ করা হয়েছে। (Ie661c, b/445466590)
  • পুরনো হয়ে গেছে GroupEntity। শুধুমাত্র বেস Entity কার্যকারিতা সহ Entity পেতে, Entity.create কল করুন যা একটি Entity ইন্টারফেস রিটার্ন করবে। (I4c450, b/473867483)
  • XrLog API যোগ করা হয়েছে। JetpackXR-এ লগিং চালু করতে XrLog.isEnabled-কে true হিসেবে সেট করুন এবং লগ লেভেল সেট করতে XrLog.Level ব্যবহার করুন। (I76a1f, b/463460895, b/487378441)

সমস্যার সমাধান

  • openxr ডিভাইসে ডিভাইস ট্র্যাকিং স্টেট সাপোর্ট যোগ করুন। (I91485, b/445466590)

ভার্সন 1.0.0-alpha12

২৫ মার্চ, ২০২৬

androidx.xr.arcore:arcore-*:1.0.0-alpha12 রিলিজ করা হয়েছে। 1.0.0-alpha12 ভার্সনে এইসব কমিট রয়েছে।

API-তে পরিবর্তন

  • Config.augmentedObjectCategories-কে তালিকা থেকে সেটে পরিবর্তন করা হয়েছে। (I25a64, b/487376359)
  • androidx.xr.arcore.Eye ও androidx.xr.arcore.Hand ধরন। (I42438, b/449032900)
  • রিসোর্স-স্কোপিংয়ের জন্য Android Context পাস করার অনুমতি দিতে Session.create ওভারলোড যোগ করা হয়েছে। (I7d3fe, b/415805990, b/477386334)
  • FakeRuntimeAnchor.ANCHOR_RESOURCE_LIMIT থেকে FakeRuntimeAnchor.anchorResourceLimit-এ পরিবর্তন করুন। (I90841, b/431992235)
  • TiltGesture API-কে পরীক্ষামূলক হিসেবে চিহ্নিত করা হয়েছে কারণ ভবিষ্যতে এটি পরিবর্তন করা বা সরিয়ে দেওয়া হতে পারে। এই API ব্যবহার করতে, @ExperimentalGesturesApi (Ic9858) বিকল্পে অপ্ট-ইন করুন
  • কনফিগে AugmentedObject ট্র্যাকিংয়ের জন্য বিভাগ সেট করার সুবিধা যোগ করা হয়েছে (I1f6e4, b/480220930)

সমস্যার সমাধান

  • PerceptionRuntimeFactory-এর প্রকৃত লোকেশন সহ META-INF/services/ ফাইল আপডেট করে Chrome-এর বিল্ড সংক্রান্ত সমস্যা সমাধান করা হয়েছে। (I7a801, b/481288291)

ভার্সন 1.0.0-alpha11

২৫ ফেব্রুয়ারি, ২০২৬

androidx.xr.arcore:arcore-*:1.0.0-alpha11 রিলিজ করা হয়েছে। ভার্সন 1.0.0-alpha11-এ এইসব কমিট রয়েছে।

ভার্সন 1.0.0-alpha10

২৮ জানুয়ারি, ২০২৬

androidx.xr.arcore:arcore-*:1.0.0-alpha10 রিলিজ করা হয়েছে। 1.0.0-alpha10 ভার্সনে এইসব কমিট রয়েছে।

নতুন ফিচার

  • TiltGesture API চালু করা হয়েছে, যা ডিভাইস কাত (উপর/নিচে) হওয়ার অবস্থা ট্রানজিশন প্রগ্রেসের সাথে স্টেবলভাবে শনাক্ত করার জন্য একটি রিয়্যাক্টিভ Flow প্রদান করে। (Ic269f, b/448152779)
  • Jetpack XR-এর জন্য ARCore এখন XR রানটাইম লগিং মেকানিজম ব্যবহার করে। আরও তথ্যের জন্য androidx.xr.runtime.Log দেখুন। (l52735, b/448697662)

API-তে পরিবর্তন

  • Geospatial.createPoseFromGeospatialPose এখন OpenXR চালু থাকা ডিভাইসে কাজ করে। (l362c6)

ভার্সন 1.0.0-alpha09

৩ ডিসেম্বর, ২০২৫

androidx.xr.arcore:arcore-*:1.0.0-alpha09 রিলিজ করা হয়েছে। ভার্সন 1.0.0-alpha09-এ এইসব কমিট রয়েছে।

ভার্সন 1.0.0-alpha08

১৯ নভেম্বর, ২০২৫

androidx.xr.arcore:arcore-*:1.0.0-alpha08 রিলিজ করা হয়েছে। 1.0.0-alpha08 ভার্সনে এইসব কমিট রয়েছে।

নতুন ফিচার

  • ARCore for Jetpack XR এখন সেইসব ডিভাইসকে সাপোর্ট করে যেখানে Google Play Services for AR উপলভ্য।
  • VPS উপলভ্যতা ও পোজ কনভার্সনের জন্য Geospatial API যোগ করা হয়েছে (I144dc)

ভার্সন 1.0.0-alpha07

২২ অক্টোবর, ২০২৫

androidx.xr.arcore:arcore-*:1.0.0-alpha07 রিলিজ করা হয়েছে। ভার্সন 1.0.0-alpha07-এ এইসব কমিট রয়েছে।

সমস্যার সমাধান

  • :xr:arcore:arcore-এ (I47315, b/446999229) প্রয়োগ সংক্রান্ত নির্ভরতা হিসেবে :xr:arcore:arcore-openxr যোগ করা হয়েছে

ভার্সন 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 enum-এর নাম পরিবর্তন করুন। (I3f7cd)
  • HandJointType-কে xr:runtime:runtime থেকে সরিয়ে xr: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-এর জন্য ARCore API যোগ করুন (Idbded)
  • Java ডেভেলপারদের ব্যবহারের জন্য :xr:arcore:arcore-rxjava3-এ stateFlowable এক্সটেনশন ফাংশন যোগ করা হয়েছে। (I083aa, b/427247794)

API-তে পরিবর্তন

  • কনফিগারেশনের *Mode ভ্যালুর নাম পরিবর্তন করে সেটির আচরণ প্রতিফলিত করা হয়েছে। (I6d247, b/414648065)
  • প্রধান ARCore আর্টিফ্যাক্টে (xr:arcore:arcore) শুধুমাত্র Kotlin-স্টাইল অ্যাসিঙ্ক API থাকবে। মানানসই API অ্যাক্সেস করার জন্য Java ডেভেলপাররা xr:arcore:arcore-rxjava3 লাইব্রেরির উপর নির্ভর করতে পারেন। (Ia525e, b/422794329)
  • মূল ARCore আর্টিফ্যাক্টে (xr:scenecore:scenecore) শুধুমাত্র Kotlin-স্টাইলের অ্যাসিঙ্ক API থাকবে। মানানসই API অ্যাক্সেস করার জন্য Java ডেভেলপাররা xr:arcore:arcore-guava লাইব্রেরির উপর নির্ভর করতে পারেন। (Iffcb4, b/422773524)
  • Java ডেভেলপারদের ব্যবহারের জন্য Anchor.persistAsync()-এ AnchorGuava যোগ করা হয়েছে। (I4af1c, b/425984631)
  • Java ডেভেলপারদের ব্যবহারের জন্য Earth.createAnchorOnSurfaceAsync(Session, Double, Double, Double, Quaternion, Surface)-এ EarthGuava যোগ করা হয়েছে। (I66357, b/425992992)
  • Java ডেভেলপাররা GltfModel.kt-এ GltfModel.createAsync-এর জন্য এক্সটেনশন ফাংশন ব্যবহার করবেন। GltfModel-এ অ্যাসিঙ্ক ফাংশন মুছে দেওয়া হবে। (I0af60)
  • এই লাইব্রেরি এখন JSpecify nullness annotations ব্যবহার করে, যা হল টাইপ-ইউজ। সঠিক ব্যবহার নিশ্চিত করতে Kotlin ডেভেলপারদের নিম্নলিখিত কম্পাইলার আর্গুমেন্ট ব্যবহার করা উচিত: -Xjspecify-annotations=strict (এটি Kotlin কম্পাইলারের 2.1.0 ভার্সন থেকে ডিফল্ট হিসেবে শুরু হয়) (Ia8420, b/326456246)
  • Java ডেভেলপারদের ব্যবহারের জন্য :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 থেকে রানটাইমে সরানো হয়েছে।
  • 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 ব্যবহার করুন।
  • অ্যাঙ্কর (Anchor.create, Anchor.load, Plane.createAnchor) জেনারেট করে এমন API এখন AnchorCreateResult রিটার্ন করে এবং AnchorCreateResourcesExhausted সঠিকভাবে প্রয়োগ করে।

সমস্যার সমাধান

  • সেশন আপডেট থ্রেডের সাথে রেস কন্ডিশনের কারণে Anchor.detach আর মারাত্মক ক্র্যাশ ঘটায় না।
  • ইমুলেটরে চালালে Anchor.create আরও স্থিতিশীল হয়

ভার্সন 1.0.0-alpha01

১২ ডিসেম্বর, ২০২৪

androidx.xr.arcore:arcore-* 1.0.0-alpha01 রিলিজ করা হয়েছে।

প্রাথমিক রিলিজের ফিচার

আগে থেকে থাকা ARCore লাইব্রেরি থেকে অনুপ্রাণিত হয়ে, Jetpack XR লাইব্রেরির জন্য ARCore, বাস্তব জগতের সাথে ডিজিটাল কন্টেন্ট মেশানোর ক্ষমতা প্রদান করে। এই লাইব্রেরিতে মোশন ট্র্যাকিং, পারসিস্ট্যান্ট অ্যাঙ্কর, হিট টেস্টিং এবং সিমান্টিক লেবেলিং (যেমন, ফ্লোর, দেওয়াল ও টেবিলটপ) সহ প্লেন আইডেন্টিফিকেশন অন্তর্ভুক্ত। Jetpack XR-এর জন্য ARCore-এর সাথে কাজ করা সম্পর্কে আরও জানতে ডেভেলপার গাইড দেখুন।

  • Session: Jetpack XR-এর জন্য ARCore, এর কার্যকারিতা বাড়াতে Jetpack XR রানটাইম ব্যবহার করে। আপনি বেশিরভাগ ARCore for Jetpack XR API-এর সাথে ইন্টার‍্যাক্ট করার জন্য একটি সেশন ব্যবহার করবেন, তাই এর ডকুমেন্টেশন দেখুন।

  • Plane: আপনার চারপাশের বিশ্বকে বুঝতে প্লেন ব্যবহার করুন। প্রতিটি প্লেনের একটি Label থাকে যা সেম্যান্টিক্যালি এটিকে বর্ণনা করে। আপনি subscribe ব্যবহার করে শনাক্ত করা লেটেস্ট প্লেন সম্পর্কে বিজ্ঞপ্তি পেতে পারেন অথবা state ব্যবহার করে নির্দিষ্ট প্লেনে হওয়া পরিবর্তন সম্পর্কে বিজ্ঞপ্তি পেতে পারেন।

  • Anchor: ভার্চুয়াল অবজেক্ট ও বাস্তব জগতের লোকেশনের মধ্যে লিঙ্ক। অ্যাঙ্করকে স্পেসে কোনও নির্দিষ্ট লোকেশনের সাথে (create ব্যবহার করে) অথবা Trackable-এর সাথে (createAnchor ব্যবহার করে) অ্যাটাচ করা যেতে পারে।

    • অ্যাঙ্করগুলি বিভিন্ন সেশন জুড়ে আবার ব্যবহার করা যেতে পারে। সেগুলি স্টোর করতে persist, তালিকাভুক্ত করতে getPersistedAnchorUuids এবং ফিরিয়ে আনতে load ব্যবহার করতে পারবেন। ব্যবহার করা হয়ে গেলে unpersist করতে ভুলবেন না।

    • Jetpack XR ও Jetpack SceneCore-এর জন্য ARCore-এর মধ্যে অ্যাঙ্কর ইন্টারঅপারেবল। আপনি অ্যাঙ্কর ব্যবহার করে AnchorEntity তৈরি করতে পারেন অথবা আপনার আগে থেকে কোনও AnchorEntity থাকলে, এর ব্যাকগ্রাউন্ড অ্যাঙ্কর রিট্রিভ করতে getAnchor ব্যবহার করতে পারেন।

    • hitTest ব্যবহার করে স্বাভাবিক ব্যবহারকারীর ইন্টার‍্যাকশন অফার করুন। কোন কন্টেন্ট ইন্টারসেক্ট করছে তা নির্ধারণ করতে এবং সেই লোকেশন থেকে Anchor তৈরি করতে হিটটেস্ট একটি Ray ব্যবহার করে। InputEvent থেকে hitTest কন্ডাক্ট করার কথা বিবেচনা করুন।

পরিচিত সমস্যা

  • unpersist-এ কল করা এবং getPersistedAnchorUuids-এর থেকে পাওয়া ফলাফলে UUID সরিয়ে দেওয়ার মধ্যে কিছুটা সময় লাগতে পারে।

  • create এটি যাচাই করবে না যে নতুন অ্যাঙ্কর ফিরিয়ে আনার জন্য সিস্টেমে পর্যাপ্ত রিসোর্স আছে কিনা। অতিরিক্ত অ্যাঙ্কর তৈরি করলে ক্র্যাশ হতে পারে।

  • আগে সেভ করা ও সেভ না করা কোনও অ্যাঙ্করকে আবার সেভ করার সুবিধা বর্তমানে উপলভ্য নেই।

  • ইমুলেটরে ব্যবহার করা যায়, তবে আসল ডিভাইসে রান করার সময় আচরণ যতটা স্থিতিশীল হয়, এখানে ততটা নাও হতে পারে। বিশেষ করে, create-এ কল করলে নেটিভ কোড সংক্রান্ত সমস্যার কারণে কল নাও লাগতে পারে এবং সাথে সাথেই অ্যাক্টিভিটি বন্ধ হয়ে যাবে।

  • নির্দিষ্ট কিছু পরিস্থিতিতে, persist কল করার সময় “অ্যাঙ্কর সেভ করা যায়নি” মেসেজ সহ একটি RuntimeException ভুলবশত দেখানো হতে পারে। সেইসব পরিস্থিতিতে, ফাংশনটি এখনও সফল হবে এবং অ্যাঙ্কর সেভ করা হবে। আমরা সাজেস্ট করি যে ওয়ার্কঅ্যারাউন্ড হিসেবে try ব্লক দিয়ে persist কলটি র‍্যাপ করুন।