Jetpack XR-এর জন্য ARCore

উপলব্ধি ক্ষমতার মাধ্যমে ডিজিটাল বিষয়বস্তুকে বাস্তব জগতে নিয়ে আসুন।
সর্বশেষ আপডেট স্থিতিশীল রিলিজ রিলিজ প্রার্থী বিটা রিলিজ আলফা রিলিজ
০৯ সেপ্টেম্বর, ২০২৬ - ১.০.০-আরসি০১ - -

নির্ভরতা ঘোষণা করা

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")
}

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

প্রতিক্রিয়া

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

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

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

সংস্করণ ১.০

সংস্করণ 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-এ এই কমিটগুলো রয়েছে।

এপিআই পরিবর্তন

  • দুটি মডিফায়ারের পরিবর্তে একটি ResizePolicy ব্যবহার করার জন্য রিসাইজযোগ্য মডিফায়ার আপডেট করা হয়েছে ( I7fb0f , b/496257436 , b/519672992 )
  • movePolicy প্যারামিটার সহ movable ওভারলোড যোগ করা হয়েছে এবং transformingMovable ও movable অপ্রচলিত করা হয়েছে ( Ic88c1 , b/481781189 )
  • পাবলিক এপিআই সারফেস থেকে TrackingState .TRACKING_DEGRADED সরানো হয়েছে এবং রানটাইমে অবনমিত স্টেটগুলোকে এর পরিবর্তে PAUSED-এ ম্যাপ করা হয়েছে। স্ট্রিং এবং রানটাইম কনভার্সনের জন্য int ভ্যালুর পরিবর্তে enum ব্যবহার করতে TrackingState আপডেট করা হয়েছে। ( I3eb5b , b/524326338 )
  • Session.create-কে একটি suspend ফাংশনে রূপান্তর করা হয়েছে। ( 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-এ এই কমিটগুলো অন্তর্ভুক্ত রয়েছে।

এপিআই পরিবর্তন

  • 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 এপিআই ( Ia0bbe ) যোগ করা হয়েছে

সংস্করণ 1.0.0-alpha14

১৯ মে, ২০২৬

androidx.xr.arcore:arcore-*:1.0.0-alpha14 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-alpha14-এ এই কমিটগুলো অন্তর্ভুক্ত রয়েছে।

এপিআই পরিবর্তন

  • GeospatialMode.VPS_AND_GPS কে বাতিল করে GeospatialMode.SPATIAL চালু করা হচ্ছে এবং একটি নতুন কম-শক্তি সম্পন্ন ট্র্যাকিং মোড, GeospatialMode.INERTIAL চালু করা হচ্ছে, যা শুধুমাত্র IMU এবং GPS ব্যবহার করে। ( I1e6cd )
  • কাস্টম অ্যাঙ্কর এক্সেপশন ক্লাসসমূহ: AnchorInvalidUuidException , AnchorNotAuthorizedException , AnchorUnsupportedLocationException , AnchorRuntimeFailureException , এবং AnchorUnsupportedObjectException এখন RuntimeException ইনস্ট্যান্স, যা চেক করার জন্য উদ্দিষ্ট নয়। ( I9356e )
  • ArCoreTestRule API যোগ করা হয়েছে, যার মধ্যে রয়েছে TestArDevice , TestAugmentableObject , TestDepthMap , TestEye , TestFace , TestGeospatial , TestHand , TestPlane , TestRenderViewpoint , এবং TestTrackable ( 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-এ এই কমিটগুলো অন্তর্ভুক্ত রয়েছে।

এপিআই পরিবর্তন

  • 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 )
  • পজিশন, অফসেট, অফসেটটাইপ, অ্যালাইনমেন্ট এবং এলিভেশনের পরিবর্তে অরবিটার এখন হয় 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 enum মানগুলির নাম পরিবর্তন করা হয়েছে। ( 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-এ এই কমিটগুলো অন্তর্ভুক্ত রয়েছে।

এপিআই পরিবর্তন

  • Config.augmentedObjectCategories List থেকে Set-এ পরিবর্তন করা হয়েছে। ( I25a64 , b/487376359 )
  • androidx.xr.arcore.Eye এবং androidx.xr.arcore.Hand টাইপগুলো। ( I42438 , b/449032900 )
  • রিসোর্স-স্কোপিংয়ের জন্য অ্যান্ড্রয়েড কনটেক্সট পাস করার সুবিধা দিতে Session.create ওভারলোড যোগ করা হয়েছে। ( I7d3fe , b/415805990 , b/477386334 )
  • FakeRuntimeAnchor.ANCHOR_RESOURCE_LIMIT FakeRuntimeAnchor.anchorResourceLimit এ পরিবর্তন করা হয়েছে। ( I90841 , b/431992235 )
  • TiltGesture 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 )

এপিআই পরিবর্তন

  • 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-এ এই কমিটগুলো অন্তর্ভুক্ত রয়েছে।

নতুন বৈশিষ্ট্য

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

সংস্করণ 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-এ এই কমিটগুলো অন্তর্ভুক্ত রয়েছে।

এপিআই পরিবর্তন

  • ARCore এর জন্য টেস্টিং সাপোর্ট xr:arcore:arcore-testing মডিউলে স্থানান্তরিত হয়েছে। ( I25469 )
  • অ্যাপ্লিকেশনগুলিকে রেন্ডারিংয়ের উদ্দেশ্যে ডিভাইসের পোজ এবং ডিসপ্লে কনফিগারেশন পুনরুদ্ধার করার সুযোগ দিতে ArDevice এবং RenderViewpoint যোগ করা হয়েছে। ( Ib7e3f )
  • HandJointType এনামগুলোর নাম পরিবর্তন করে HAND_JOINT_TYPE_ প্রিফিক্স যোগ করুন। ( I3f7cd )
  • HandJointType xr: 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 )
  • জাভা ডেভেলপারদের ব্যবহারের জন্য :xr:arcore:arcore-rxjava3 এ stateFlowable এক্সটেনশন ফাংশন যোগ করা হয়েছে। ( I083aa , b/427247794 )

এপিআই পরিবর্তন

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

এপিআই পরিবর্তন

  • 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 লাইব্রেরিটি ডিজিটাল কন্টেন্টকে বাস্তব জগতের সাথে মেলানোর সক্ষমতা প্রদান করে। এই লাইব্রেরিতে মোশন ট্র্যাকিং, পারসিস্টেন্ট অ্যাঙ্কর, হিট টেস্টিং এবং সিম্যান্টিক লেবেলিং সহ প্লেন শনাক্তকরণের (যেমন, মেঝে, দেয়াল এবং টেবিলের উপরিভাগ) মতো ফিচার রয়েছে। ARCore for Jetpack XR নিয়ে কাজ করার বিষয়ে আরও জানতে ডেভেলপার গাইডটি দেখুন।

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

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

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

    • অ্যাঙ্করগুলো একাধিক সেশনে পুনরায় ব্যবহার করা যায়। এগুলো সংরক্ষণ করতে আপনি persist , গণনা করতে getPersistedAnchorUuids এবং পুনরুদ্ধার করতে load ব্যবহার করতে পারেন। ব্যবহার শেষ হয়ে গেলে অবশ্যই সেগুলোকে unpersist নেবেন।

    • ARCore for Jetpack XR এবং Jetpack SceneCore-এর মধ্যে অ্যাঙ্করগুলো পরস্পর কার্যক্ষম। আপনি একটি অ্যাঙ্কর ব্যবহার করে একটি AnchorEntity তৈরি করতে পারেন অথবা, যদি আপনার কাছে আগে থেকেই একটি AnchorEntity থাকে, তবে আপনি getAnchor ব্যবহার করে সেটির ব্যাকিং অ্যাঙ্করটি পুনরুদ্ধার করতে পারেন।

    • hitTest ব্যবহার করে স্বাভাবিক ইউজার ইন্টারঅ্যাকশনের সুযোগ দিন। একটি hitTest কোন কন্টেন্টকে ছেদ করবে তা নির্ধারণ করতে এবং সেই অবস্থান থেকে একটি Anchor তৈরি করতে একটি Ray ব্যবহার করে। একটি InputEvent থেকে hitTest পরিচালনা করার কথা বিবেচনা করতে পারেন।

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

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

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

  • পূর্বে পার্সিস্টেড এবং আনপার্সিস্টেড করা কোনো অ্যাঙ্করকে পুনরায় পার্সিস্টেড করা বর্তমানে সমর্থিত নয়।

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

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

,

Jetpack XR-এর জন্য ARCore

উপলব্ধি ক্ষমতার মাধ্যমে ডিজিটাল বিষয়বস্তুকে বাস্তব জগতে নিয়ে আসুন।
সর্বশেষ আপডেট স্থিতিশীল রিলিজ রিলিজ প্রার্থী বিটা রিলিজ আলফা রিলিজ
০৯ সেপ্টেম্বর, ২০২৬ - ১.০.০-আরসি০১ - -

নির্ভরতা ঘোষণা করা

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")
}

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

প্রতিক্রিয়া

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

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

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

সংস্করণ ১.০

সংস্করণ 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-এ এই কমিটগুলো রয়েছে।

এপিআই পরিবর্তন

  • দুটি মডিফায়ারের পরিবর্তে একটি ResizePolicy ব্যবহার করার জন্য রিসাইজযোগ্য মডিফায়ার আপডেট করা হয়েছে ( I7fb0f , b/496257436 , b/519672992 )
  • movePolicy প্যারামিটার সহ movable ওভারলোড যোগ করা হয়েছে এবং transformingMovable ও movable অপ্রচলিত করা হয়েছে ( Ic88c1 , b/481781189 )
  • পাবলিক এপিআই সারফেস থেকে TrackingState .TRACKING_DEGRADED সরানো হয়েছে এবং রানটাইমে অবনমিত স্টেটগুলোকে এর পরিবর্তে PAUSED-এ ম্যাপ করা হয়েছে। স্ট্রিং এবং রানটাইম কনভার্সনের জন্য int ভ্যালুর পরিবর্তে enum ব্যবহার করতে TrackingState আপডেট করা হয়েছে। ( I3eb5b , b/524326338 )
  • Session.create-কে একটি suspend ফাংশনে রূপান্তর করা হয়েছে। ( 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-এ এই কমিটগুলো অন্তর্ভুক্ত রয়েছে।

এপিআই পরিবর্তন

  • 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 এপিআই ( Ia0bbe ) যোগ করা হয়েছে

সংস্করণ 1.0.0-alpha14

১৯ মে, ২০২৬

androidx.xr.arcore:arcore-*:1.0.0-alpha14 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-alpha14-এ এই কমিটগুলো অন্তর্ভুক্ত রয়েছে।

এপিআই পরিবর্তন

  • GeospatialMode.VPS_AND_GPS কে বাতিল করে GeospatialMode.SPATIAL চালু করা হচ্ছে এবং একটি নতুন কম-শক্তি সম্পন্ন ট্র্যাকিং মোড, GeospatialMode.INERTIAL চালু করা হচ্ছে, যা শুধুমাত্র IMU এবং GPS ব্যবহার করে। ( I1e6cd )
  • কাস্টম অ্যাঙ্কর এক্সেপশন ক্লাসসমূহ: AnchorInvalidUuidException , AnchorNotAuthorizedException , AnchorUnsupportedLocationException , AnchorRuntimeFailureException , এবং AnchorUnsupportedObjectException এখন RuntimeException ইনস্ট্যান্স, যা চেক করার জন্য উদ্দিষ্ট নয়। ( I9356e )
  • ArCoreTestRule API যোগ করা হয়েছে, যার মধ্যে রয়েছে TestArDevice , TestAugmentableObject , TestDepthMap , TestEye , TestFace , TestGeospatial , TestHand , TestPlane , TestRenderViewpoint , এবং TestTrackable ( 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-এ এই কমিটগুলো অন্তর্ভুক্ত রয়েছে।

এপিআই পরিবর্তন

  • 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 )
  • পজিশন, অফসেট, অফসেটটাইপ, অ্যালাইনমেন্ট এবং এলিভেশনের পরিবর্তে অরবিটার এখন হয় 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 enum মানগুলির নাম পরিবর্তন করা হয়েছে। ( 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-এ এই কমিটগুলো অন্তর্ভুক্ত রয়েছে।

এপিআই পরিবর্তন

  • Config.augmentedObjectCategories List থেকে Set-এ পরিবর্তন করা হয়েছে। ( I25a64 , b/487376359 )
  • androidx.xr.arcore.Eye এবং androidx.xr.arcore.Hand টাইপগুলো। ( I42438 , b/449032900 )
  • রিসোর্স-স্কোপিংয়ের জন্য অ্যান্ড্রয়েড কনটেক্সট পাস করার সুবিধা দিতে Session.create ওভারলোড যোগ করা হয়েছে। ( I7d3fe , b/415805990 , b/477386334 )
  • FakeRuntimeAnchor.ANCHOR_RESOURCE_LIMIT FakeRuntimeAnchor.anchorResourceLimit এ পরিবর্তন করা হয়েছে। ( I90841 , b/431992235 )
  • TiltGesture 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 )

এপিআই পরিবর্তন

  • 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-এ এই কমিটগুলো অন্তর্ভুক্ত রয়েছে।

নতুন বৈশিষ্ট্য

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

সংস্করণ 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-এ এই কমিটগুলো অন্তর্ভুক্ত রয়েছে।

এপিআই পরিবর্তন

  • ARCore এর জন্য টেস্টিং সাপোর্ট xr:arcore:arcore-testing মডিউলে স্থানান্তরিত হয়েছে। ( I25469 )
  • অ্যাপ্লিকেশনগুলিকে রেন্ডারিংয়ের উদ্দেশ্যে ডিভাইসের পোজ এবং ডিসপ্লে কনফিগারেশন পুনরুদ্ধার করার সুযোগ দিতে ArDevice এবং RenderViewpoint যোগ করা হয়েছে। ( Ib7e3f )
  • HandJointType এনামগুলোর নাম পরিবর্তন করে HAND_JOINT_TYPE_ প্রিফিক্স যোগ করুন। ( I3f7cd )
  • HandJointType xr: 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 )
  • জাভা ডেভেলপারদের ব্যবহারের জন্য :xr:arcore:arcore-rxjava3 এ stateFlowable এক্সটেনশন ফাংশন যোগ করা হয়েছে। ( I083aa , b/427247794 )

এপিআই পরিবর্তন

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

এপিআই পরিবর্তন

  • 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 লাইব্রেরিটি ডিজিটাল কন্টেন্টকে বাস্তব জগতের সাথে মেলানোর সক্ষমতা প্রদান করে। এই লাইব্রেরিতে মোশন ট্র্যাকিং, পারসিস্টেন্ট অ্যাঙ্কর, হিট টেস্টিং এবং সিম্যান্টিক লেবেলিং সহ প্লেন শনাক্তকরণের (যেমন, মেঝে, দেয়াল এবং টেবিলের উপরিভাগ) মতো ফিচার রয়েছে। ARCore for Jetpack XR নিয়ে কাজ করার বিষয়ে আরও জানতে ডেভেলপার গাইডটি দেখুন।

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

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

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

    • Anchors can be reused across sessions. You can use persist to store them, getPersistedAnchorUuids to enumerate them and load to retrieve them. Make sure that you unpersist them once they are no longer in use.

    • Anchors are interoperable between ARCore for Jetpack XR and Jetpack SceneCore. You can create an AnchorEntity using an anchor or, if you have an existing AnchorEntity, you can use getAnchor to retrieve its backing anchor.

    • Offer natural user interactions using hitTest . A hitTest uses a Ray to determine which contents it intersects and to create an Anchor from that location. Consider conducting a hitTest from an InputEvent .

Known Issues

  • There might be a delay between calling unpersist and its UUID being removed from the results returned by getPersistedAnchorUuids .

  • create will not validate that the system has enough resources to return new anchors. Creating an excessive amount of anchors might lead to a crash.

  • Persisting an Anchor that was previously persisted and unpersisted is not currently supported.

  • Usage in the emulator is supported, but the behavior might not be as stable as when running on an actual device. Particularly, calls to create might fail with a native code error and immediately terminate the activity.

  • In certain circumstances, a RuntimeException might be erroneously thrown when calling persist with the message “Anchor was not persisted”. In those circumstances, the function would still succeed and the anchor will be persisted. We recommend wrapping the call to persist with a try block as a workaround.

,

ARCore for Jetpack XR

Bring digital content into the real world with perception capabilities.
Latest Update Stable Release Release Candidate Beta Release Alpha Release
০৯ সেপ্টেম্বর, ২০২৬ - 1.0.0-rc01 - -

Declaring dependencies

To add a dependency on ARCore for Jetpack XR, you must add the Google Maven repository to your project. Read Google's Maven repository for more information.

Add the dependencies for the artifacts you need in the build.gradle file for your app or module:

গ্রোভি

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

কোটলিন

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

For more information about dependencies, see Add build dependencies .

প্রতিক্রিয়া

Your feedback helps make Jetpack better. Let us know if you discover new issues or have ideas for improving this library. Please take a look at the existing issues in this library before you create a new one. You can add your vote to an existing issue by clicking the star button.

Create a new issue

See the Issue Tracker documentation for more information.

Version 1.0

Version 1.0.0-rc01

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

androidx.xr.arcore:arcore-*:1.0.0-rc01 is released. Version 1.0.0-rc01 contains these commits .

Version 1.0.0-beta02

August 12, 2026

androidx.xr.arcore:arcore-*:1.0.0-beta02 is released. Version 1.0.0-beta02 contains these commits .

Bug Fixes

  • Fix concurrency issue in OpenXR anchor persistence. ( I15c8b )
  • Implemented toString() in more classes for debugging. ( I587e8 )

Version 1.0.0-beta01

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

androidx.xr.arcore:arcore-*:1.0.0-beta01 is released. Version 1.0.0-beta01 contains these commits .

API Changes

  • Updated resizable modifier to use a ResizePolicy instead of two modifiers ( I7fb0f , b/496257436 , b/519672992 )
  • Added movable overload with movePolicy param and deprecate transformingMovable and movable ( Ic88c1 , b/481781189 )
  • Removed TrackingState .TRACKING_DEGRADED from public API surface and map runtime degraded states to PAUSED instead. Update TrackingState to use enums instead of int values for string conversion and runtime conversion. ( I3eb5b , b/524326338 )
  • Converted Session.create to a suspend function. ( I5d27f )
  • Deprecated the ProjectedPermissionsResultContract ( I141d5 , b/515699436 )
  • Updated AnchorEntity to be called AnchorSpace ( Ifa95e , b/513619219 )

Version 1.0.0-alpha15

১৭ জুন, ২০২৬

androidx.xr.arcore:arcore-*:1.0.0-alpha15 is released. Version 1.0.0-alpha15 contains these commits .

API Changes

  • HitResult.createAnchor was removed. Developers can create an anchor representing the HitResult if the trackable of the result is an Anchorable by supplying the hit position to the createAnchor function of the Anchorable . ( Ia851e )
  • AnchorUnsupportedObject was removed. It is no longer thrown by a JXR ARCore runtime. ( Ia851e )
  • androidx.xr.arcore.Anchor and androidx.xr.arcore.ArDevice now implement androidx.xr.arcore.Trackable . ( I57b65 )
  • Depth.left , Depth.right , and Depth.mono are now non-nullable ( I1fc5e )
  • Face.getUserFace is now non-nullable ( I0eac1 )
  • RenderViewpoint.left , RenderViewpoint.right , RenderViewpoint.mono are now non-nullable ( Icf7fa )
  • Hand.left and Hand.right are non non-nullable ( Icef37 )
  • Added QrCode API ( Ia0bbe )

Version 1.0.0-alpha14

১৯ মে, ২০২৬

androidx.xr.arcore:arcore-*:1.0.0-alpha14 is released. Version 1.0.0-alpha14 contains these commits .

API Changes

  • Deprecating GeospatialMode.VPS_AND_GPS in favor of GeospatialMode.SPATIAL and introducing a new lower-power tracking mode, GeospatialMode.INERTIAL , which uses only IMU and GPS. ( I1e6cd )
  • Custom anchor exception classes: AnchorInvalidUuidException , AnchorNotAuthorizedException , AnchorUnsupportedLocationException , AnchorRuntimeFailureException , and AnchorUnsupportedObjectException are now RuntimeException instances, not intended to be checked. ( I9356e )
  • Added ArCoreTestRule API, including TestArDevice , TestAugmentableObject , TestDepthMap , TestEye , TestFace , TestGeospatial , TestHand , TestPlane , TestRenderViewpoint , & TestTrackable ( I0ad3c )
  • Removes AnchorLoadInvalidUuid , AnchorCreateUnsupportedObject , AnchorCreateUnsupportedLocation , and AnchorCreateNotAuthorized . All of these errors are now exceptions in the runtime. Removes AnchorCreateIllegalState . This has been replaced with AnchorCreateTrackingUnavailable in most cases. Adds AnchorException and derived classes AnchorInvalidUuidException , AnchorNotAuthorizedException , AnchorUnsupportedLocationException , AnchorRuntimeFailureException , and AnchorUnsupportedObjectException . ( I4c4dd )

External Contribution

  • Added AugmentedImage API for custom marker tracking ( I0cf09 )

Version 1.0.0-alpha13

০৬ মে, ২০২৬

androidx.xr.arcore:arcore-*:1.0.0-alpha13 is released. Version 1.0.0-alpha13 contains these commits .

API Changes

  • TrackingState and VpsAvailabilityResult have moved to the androidx.xr.arcore package , and the types in androidx.xr.runtime are now deprecated. ( Ic7930 , b/480462213 )
  • Renamed Plane.Type to PlaneType . ( I8c90c , b/482675376 )
  • Renamed Hand.HandSide to HandSide . ( Ica562 , b/482675376 )
  • Renamed Plane.Label to PlaneLabel . ( Ic6b67 , b/482675376 )
  • Renamed Geospatial.Surface to GeospatialSurface . ( I1a8be , b/482675376 )
  • Renamed Geospatial.State to GeospatialState . ( I203fa , b/482675376 )
  • Moved NativeData API to xr:runtime:runtime library. ( I87954 , b/494251500 )
  • Session.create and Session.configure are now non-exhaustive and require else clauses in when statements. ( I9885e , b/495805998 , b/495805998 )
  • androidx.xr.runtime.FieldOfView has been deprecated. Use androidx.xr.runtime.math.FieldOfView instead. ( Ia01a0 , b/480233045 )
  • Changed Orbiter to use either an OrbiterAnchorPoint + VolumeOffset or an OrbiterPoseProvider instead of position, offset, offsetType, alignment, and elevation. Also removed the shouldRenderInNonSpatial parameter. If the developer does not want the orbiter to render in non-spatial they should wrap the orbiter in an if statement and check the SpatialCapabilities . ( I9fbb3 , b/462428503 )
  • Added movable modifiers. These modifiers work well, right now, for SpatialPanels and SpatialExternalSurface . Very soon they will also be supported for SpatialGltfModels . However, the intention is to have these supported well for all SubspaceComposables . ( I9a3cd , b/479530787 , b/478935063 , b/478935063 )
  • Developers are expected to observe the ArDevice.state Flow to monitor State.trackingState and adjust their application's rendering or warnings accordingly based on the tracking fidelity. ( Ic00f0 , b/445466590 )
  • Renamed HandJointType enum values. ( Ifbc83 , b/482670596 )
  • Renamed FaceConfidenceRegion constants. ( Ia62d5 , b/482670596 )
  • Renamed FaceBlendShapeType constants. ( I33b8b , b/482670596 )
  • Added CreatePoseFromGeospatialPoseErrorInternal and CreateGeospatialPoseFromPoseErrorInternal . ( I4bcf1 , b/482666615 )
  • Renamed DeviceTrackingMode.LAST_KNOWN to SPATIAL_LAST_KNOWN (with a deprecated fallback), added INERTIAL_LAST_KNOWN for 3DoF tracking, and added TRACKING_DEGRADED to TrackingState . ( Ie661c , b/445466590 )
  • Deprecated GroupEntity . To have an Entity with only the base Entity functionality, call Entity.create which will return and Entity interface. ( I4c450 , b/473867483 )
  • Added XrLog API. Set XrLog.isEnabled to true to enable logging in JetpackXR, and use XrLog.Level to set the log level. ( I76a1f , b/463460895 , b/487378441 )

Bug Fixes

  • Add the device tracking state support to the openxr devices. ( I91485 , b/445466590 )

Version 1.0.0-alpha12

March 25, 2026

androidx.xr.arcore:arcore-*:1.0.0-alpha12 is released. Version 1.0.0-alpha12 contains these commits .

API Changes

  • Changed Config.augmentedObjectCategories from a List to a Set. ( I25a64 , b/487376359 )
  • The types androidx.xr.arcore.Eye and androidx.xr.arcore.Hand . ( I42438 , b/449032900 )
  • Added Session.create overload to allow passing an Android Context for resource-scoping. ( I7d3fe , b/415805990 , b/477386334 )
  • Changes FakeRuntimeAnchor.ANCHOR_RESOURCE_LIMIT to FakeRuntimeAnchor.anchorResourceLimit . ( I90841 , b/431992235 )
  • Making TiltGesture API experimental as it may be changed or removed in the future. To use this api, opt in to @ExperimentalGesturesApi ( Ic9858 )
  • Added ability to set categories for AugmentedObject tracking in the Config ( I1f6e4 , b/480220930 )

Bug Fixes

  • Fixed Chrome's build by updating META-INF/services/ file with actual location of PerceptionRuntimeFactory . ( I7a801 , b/481288291 )

Version 1.0.0-alpha11

February 25, 2026

androidx.xr.arcore:arcore-*:1.0.0-alpha11 is released. Version 1.0.0-alpha11 contains these commits .

Version 1.0.0-alpha10

January 28, 2026

androidx.xr.arcore:arcore-*:1.0.0-alpha10 is released. Version 1.0.0-alpha10 contains these commits .

New Features

  • Introduces TiltGesture API, providing a reactive Flow for stable detection of device tilt (UP/DOWN) state with transition progress. ( Ic269f , b/448152779 )
  • ARCore for Jetpack XR now uses the XR Runtime Logging mechanism. See androidx.xr.runtime.Log for more information. ( l52735 , b/448697662 )

API Changes

  • Geospatial.createPoseFromGeospatialPose now works on OpenXR-enabled devices. ( l362c6 )

Version 1.0.0-alpha09

December 03, 2025

androidx.xr.arcore:arcore-*:1.0.0-alpha09 is released. Version 1.0.0-alpha09 contains these commits .

Version 1.0.0-alpha08

November 19, 2025

androidx.xr.arcore:arcore-*:1.0.0-alpha08 is released. Version 1.0.0-alpha08 contains these commits .

New Features

  • ARCore for Jetpack XR now supports devices where Google Play Services for AR is available.
  • Added Geospatial APIs for VPS Availability and pose conversion ( I144dc )

Version 1.0.0-alpha07

October 22, 2025

androidx.xr.arcore:arcore-*:1.0.0-alpha07 is released. Version 1.0.0-alpha07 contains these commits .

Bug Fixes

  • :xr:arcore:arcore-openxr added as an implementation dependency to :xr:arcore:arcore ( I47315 , b/446999229 )

Version 1.0.0-alpha06

September 24, 2025

androidx.xr.arcore:arcore-*:1.0.0-alpha06 is released. Version 1.0.0-alpha06 contains these commits .

API Changes

  • Testing support for ARCore has migrated to the xr:arcore:arcore-testing module. ( I25469 )
  • Adding ArDevice and RenderViewpoint to allow applications to retrieve the device's pose and display configuration for rendering purposes. ( Ib7e3f )
  • Rename HandJointType enums with HAND_JOINT_TYPE_ prefix. ( I3f7cd )
  • HandJointType has been moved to xr:arcore:arcore from xr:runtime:runtime . ( Iadb9c , b/409058039 )
  • Hand.State now exposes a java.nio.FloatBuffer with the joint poses in a format that allows easy access to performance-oriented applications. ( I55e27 )

Version 1.0.0-alpha05

July 30, 2025

androidx.xr.arcore:arcore:1.0.0-alpha05 , androidx.xr.arcore:arcore-guava:1.0.0-alpha05 , and androidx.xr.arcore:arcore-rxjava3:1.0.0-alpha05 are released. Version 1.0.0-alpha05 contains these commits .

New Features

  • Add getPrimaryHandSide so the developer could get the hand side info ( I270bd )
  • Add geospatial check VPS availability API ( I58573 )
  • Add ARCore API for checkVpsAvailability ( Idbded )
  • stateFlowable extension functions added to :xr:arcore:arcore-rxjava3 for usage by Java developers. ( I083aa , b/427247794 )

API Changes

  • Config *Mode vals have been renamed to reflect their behavior. ( I6d247 , b/414648065 )
  • The main ARCore artifact (xr:arcore:arcore) will only contain Kotlin-style async APIs. Java developers can depend on the xr:arcore:arcore-rxjava3 library to access compatible APIs. ( Ia525e , b/422794329 )
  • The main ARCore artifact ( xr:scenecore:scenecore ) will only contain Kotlin-style async APIs. Java developers can depend on the xr:arcore:arcore-guava library to access compatible APIs. ( Iffcb4 , b/422773524 )
  • Anchor.persistAsync() added to AnchorGuava for usage by Java developers. ( I4af1c , b/425984631 )
  • Earth.createAnchorOnSurfaceAsync(Session, Double, Double, Double, Quaternion, Surface) added to EarthGuava for usage by Java developers. ( I66357 , b/425992992 )
  • Java developers will use the extension functions for GltfModel.createAsync in GltfModel.kt . Async functions in GltfModel will be deleted. ( I0af60 )
  • This library now uses JSpecify nullness annotations , which are type-use. Kotlin developers should use the following compiler argument to enforce correct usage: -Xjspecify-annotations=strict (this is the default starting with version 2.1.0 of the Kotlin compiler) ( Ia8420 , b/326456246 )
  • subscribeAsFlowable extension functions added to :xr:arcore:arcore-rxjava3 for usage by Java developers. ( Id3e49 , b/427277298 )

Version 1.0.0-alpha04

May 7, 2025

androidx.xr.arcore:arcore:1.0.0-alpha04 is released. Version 1.0.0-alpha04 contains these commits .

API Changes

  • Projects released with Kotlin 2.0 require KGP 2.0.0 or newer to be consumed. ( Idb6b5 )
  • TrackingState and HandJointType have been moved from ARCore to Runtime.
  • Hand.State.isActive (boolean) has been changed to Hand.State.trackingState (androidx.xr.runtime.TrackingState) .
  • Anchor.load returns Anchor.AnchorLoadInvalidUuid if the UUID is invalid.

Version 1.0.0-alpha03

February 26, 2025

androidx.xr.arcore:arcore:1.0.0-alpha03 is released with no notable changes since the last alpha. Version 1.0.0-alpha03 contains these commits .

Version 1.0.0-alpha02

February 12, 2025

androidx.xr.arcore:arcore:1.0.0-alpha02 is released. Version 1.0.0-alpha02 contains these commits .

New Features

  • Added hand tracking support. Use Hand.left and Hand.right to access the tracking information.
  • APIs that generate an anchor ( Anchor.create , Anchor.load , Plane.createAnchor ) now all return AnchorCreateResult and properly implement AnchorCreateResourcesExhausted .

বাগ সংশোধন

  • Anchor.detach no longer causes a fatal crash due to a race condition with the Session update thread.
  • Anchor.create is more stable when running on an emulator

Version 1.0.0-alpha01

December 12, 2024

androidx.xr.arcore:arcore-* 1.0.0-alpha01 is released.

Features of initial release

Inspired by the existing ARCore library, the ARCore for Jetpack XR library provides capabilities for blending digital content with the real world. This library includes motion tracking, persistent anchors, hit testing, and plane identification with semantic labeling (for example, floor, walls, and tabletops). View the developer guide to learn more about working with ARCore for Jetpack XR.

  • Session : ARCore for Jetpack XR uses the Jetpack XR Runtime under-the-hood to power its functionality. You will use a Session to interact with most ARCore for Jetpack XR APIs, so please take a look at its documentation.

  • Plane : Use planes to understand the world around you. Each plane has a Label that describes it semantically. You can use subscribe to be notified about the latest detected planes or state to be notified about the changes to a specific plane.

  • Anchor : A link between a virtual object and a real world location. Anchors can be attached to a specific location in space (using create ) or a Trackable (using createAnchor ).

    • Anchors can be reused across sessions. You can use persist to store them, getPersistedAnchorUuids to enumerate them and load to retrieve them. Make sure that you unpersist them once they are no longer in use.

    • Anchors are interoperable between ARCore for Jetpack XR and Jetpack SceneCore. You can create an AnchorEntity using an anchor or, if you have an existing AnchorEntity, you can use getAnchor to retrieve its backing anchor.

    • Offer natural user interactions using hitTest . A hitTest uses a Ray to determine which contents it intersects and to create an Anchor from that location. Consider conducting a hitTest from an InputEvent .

Known Issues

  • There might be a delay between calling unpersist and its UUID being removed from the results returned by getPersistedAnchorUuids .

  • create will not validate that the system has enough resources to return new anchors. Creating an excessive amount of anchors might lead to a crash.

  • Persisting an Anchor that was previously persisted and unpersisted is not currently supported.

  • Usage in the emulator is supported, but the behavior might not be as stable as when running on an actual device. Particularly, calls to create might fail with a native code error and immediately terminate the activity.

  • In certain circumstances, a RuntimeException might be erroneously thrown when calling persist with the message “Anchor was not persisted”. In those circumstances, the function would still succeed and the anchor will be persisted. We recommend wrapping the call to persist with a try block as a workaround.

,

ARCore for Jetpack XR

Bring digital content into the real world with perception capabilities.
Latest Update Stable Release Release Candidate Beta Release Alpha Release
০৯ সেপ্টেম্বর, ২০২৬ - 1.0.0-rc01 - -

Declaring dependencies

To add a dependency on ARCore for Jetpack XR, you must add the Google Maven repository to your project. Read Google's Maven repository for more information.

Add the dependencies for the artifacts you need in the build.gradle file for your app or module:

গ্রোভি

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

কোটলিন

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

For more information about dependencies, see Add build dependencies .

প্রতিক্রিয়া

Your feedback helps make Jetpack better. Let us know if you discover new issues or have ideas for improving this library. Please take a look at the existing issues in this library before you create a new one. You can add your vote to an existing issue by clicking the star button.

Create a new issue

See the Issue Tracker documentation for more information.

Version 1.0

Version 1.0.0-rc01

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

androidx.xr.arcore:arcore-*:1.0.0-rc01 is released. Version 1.0.0-rc01 contains these commits .

Version 1.0.0-beta02

August 12, 2026

androidx.xr.arcore:arcore-*:1.0.0-beta02 is released. Version 1.0.0-beta02 contains these commits .

Bug Fixes

  • Fix concurrency issue in OpenXR anchor persistence. ( I15c8b )
  • Implemented toString() in more classes for debugging. ( I587e8 )

Version 1.0.0-beta01

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

androidx.xr.arcore:arcore-*:1.0.0-beta01 is released. Version 1.0.0-beta01 contains these commits .

API Changes

  • Updated resizable modifier to use a ResizePolicy instead of two modifiers ( I7fb0f , b/496257436 , b/519672992 )
  • Added movable overload with movePolicy param and deprecate transformingMovable and movable ( Ic88c1 , b/481781189 )
  • Removed TrackingState .TRACKING_DEGRADED from public API surface and map runtime degraded states to PAUSED instead. Update TrackingState to use enums instead of int values for string conversion and runtime conversion. ( I3eb5b , b/524326338 )
  • Converted Session.create to a suspend function. ( I5d27f )
  • Deprecated the ProjectedPermissionsResultContract ( I141d5 , b/515699436 )
  • Updated AnchorEntity to be called AnchorSpace ( Ifa95e , b/513619219 )

Version 1.0.0-alpha15

১৭ জুন, ২০২৬

androidx.xr.arcore:arcore-*:1.0.0-alpha15 is released. Version 1.0.0-alpha15 contains these commits .

API Changes

  • HitResult.createAnchor was removed. Developers can create an anchor representing the HitResult if the trackable of the result is an Anchorable by supplying the hit position to the createAnchor function of the Anchorable . ( Ia851e )
  • AnchorUnsupportedObject was removed. It is no longer thrown by a JXR ARCore runtime. ( Ia851e )
  • androidx.xr.arcore.Anchor and androidx.xr.arcore.ArDevice now implement androidx.xr.arcore.Trackable . ( I57b65 )
  • Depth.left , Depth.right , and Depth.mono are now non-nullable ( I1fc5e )
  • Face.getUserFace is now non-nullable ( I0eac1 )
  • RenderViewpoint.left , RenderViewpoint.right , RenderViewpoint.mono are now non-nullable ( Icf7fa )
  • Hand.left and Hand.right are non non-nullable ( Icef37 )
  • Added QrCode API ( Ia0bbe )

Version 1.0.0-alpha14

১৯ মে, ২০২৬

androidx.xr.arcore:arcore-*:1.0.0-alpha14 is released. Version 1.0.0-alpha14 contains these commits .

API Changes

  • Deprecating GeospatialMode.VPS_AND_GPS in favor of GeospatialMode.SPATIAL and introducing a new lower-power tracking mode, GeospatialMode.INERTIAL , which uses only IMU and GPS. ( I1e6cd )
  • Custom anchor exception classes: AnchorInvalidUuidException , AnchorNotAuthorizedException , AnchorUnsupportedLocationException , AnchorRuntimeFailureException , and AnchorUnsupportedObjectException are now RuntimeException instances, not intended to be checked. ( I9356e )
  • Added ArCoreTestRule API, including TestArDevice , TestAugmentableObject , TestDepthMap , TestEye , TestFace , TestGeospatial , TestHand , TestPlane , TestRenderViewpoint , & TestTrackable ( I0ad3c )
  • Removes AnchorLoadInvalidUuid , AnchorCreateUnsupportedObject , AnchorCreateUnsupportedLocation , and AnchorCreateNotAuthorized . All of these errors are now exceptions in the runtime. Removes AnchorCreateIllegalState . This has been replaced with AnchorCreateTrackingUnavailable in most cases. Adds AnchorException and derived classes AnchorInvalidUuidException , AnchorNotAuthorizedException , AnchorUnsupportedLocationException , AnchorRuntimeFailureException , and AnchorUnsupportedObjectException . ( I4c4dd )

External Contribution

  • Added AugmentedImage API for custom marker tracking ( I0cf09 )

Version 1.0.0-alpha13

০৬ মে, ২০২৬

androidx.xr.arcore:arcore-*:1.0.0-alpha13 is released. Version 1.0.0-alpha13 contains these commits .

API Changes

  • TrackingState and VpsAvailabilityResult have moved to the androidx.xr.arcore package , and the types in androidx.xr.runtime are now deprecated. ( Ic7930 , b/480462213 )
  • Renamed Plane.Type to PlaneType . ( I8c90c , b/482675376 )
  • Renamed Hand.HandSide to HandSide . ( Ica562 , b/482675376 )
  • Renamed Plane.Label to PlaneLabel . ( Ic6b67 , b/482675376 )
  • Renamed Geospatial.Surface to GeospatialSurface . ( I1a8be , b/482675376 )
  • Renamed Geospatial.State to GeospatialState . ( I203fa , b/482675376 )
  • Moved NativeData API to xr:runtime:runtime library. ( I87954 , b/494251500 )
  • Session.create and Session.configure are now non-exhaustive and require else clauses in when statements. ( I9885e , b/495805998 , b/495805998 )
  • androidx.xr.runtime.FieldOfView has been deprecated. Use androidx.xr.runtime.math.FieldOfView instead. ( Ia01a0 , b/480233045 )
  • Changed Orbiter to use either an OrbiterAnchorPoint + VolumeOffset or an OrbiterPoseProvider instead of position, offset, offsetType, alignment, and elevation. Also removed the shouldRenderInNonSpatial parameter. If the developer does not want the orbiter to render in non-spatial they should wrap the orbiter in an if statement and check the SpatialCapabilities . ( I9fbb3 , b/462428503 )
  • Added movable modifiers. These modifiers work well, right now, for SpatialPanels and SpatialExternalSurface . Very soon they will also be supported for SpatialGltfModels . However, the intention is to have these supported well for all SubspaceComposables . ( I9a3cd , b/479530787 , b/478935063 , b/478935063 )
  • Developers are expected to observe the ArDevice.state Flow to monitor State.trackingState and adjust their application's rendering or warnings accordingly based on the tracking fidelity. ( Ic00f0 , b/445466590 )
  • Renamed HandJointType enum values. ( Ifbc83 , b/482670596 )
  • Renamed FaceConfidenceRegion constants. ( Ia62d5 , b/482670596 )
  • Renamed FaceBlendShapeType constants. ( I33b8b , b/482670596 )
  • Added CreatePoseFromGeospatialPoseErrorInternal and CreateGeospatialPoseFromPoseErrorInternal . ( I4bcf1 , b/482666615 )
  • Renamed DeviceTrackingMode.LAST_KNOWN to SPATIAL_LAST_KNOWN (with a deprecated fallback), added INERTIAL_LAST_KNOWN for 3DoF tracking, and added TRACKING_DEGRADED to TrackingState . ( Ie661c , b/445466590 )
  • Deprecated GroupEntity . To have an Entity with only the base Entity functionality, call Entity.create which will return and Entity interface. ( I4c450 , b/473867483 )
  • Added XrLog API. Set XrLog.isEnabled to true to enable logging in JetpackXR, and use XrLog.Level to set the log level. ( I76a1f , b/463460895 , b/487378441 )

Bug Fixes

  • Add the device tracking state support to the openxr devices. ( I91485 , b/445466590 )

Version 1.0.0-alpha12

March 25, 2026

androidx.xr.arcore:arcore-*:1.0.0-alpha12 is released. Version 1.0.0-alpha12 contains these commits .

API Changes

  • Changed Config.augmentedObjectCategories from a List to a Set. ( I25a64 , b/487376359 )
  • The types androidx.xr.arcore.Eye and androidx.xr.arcore.Hand . ( I42438 , b/449032900 )
  • Added Session.create overload to allow passing an Android Context for resource-scoping. ( I7d3fe , b/415805990 , b/477386334 )
  • Changes FakeRuntimeAnchor.ANCHOR_RESOURCE_LIMIT to FakeRuntimeAnchor.anchorResourceLimit . ( I90841 , b/431992235 )
  • Making TiltGesture API experimental as it may be changed or removed in the future. To use this api, opt in to @ExperimentalGesturesApi ( Ic9858 )
  • Added ability to set categories for AugmentedObject tracking in the Config ( I1f6e4 , b/480220930 )

Bug Fixes

  • Fixed Chrome's build by updating META-INF/services/ file with actual location of PerceptionRuntimeFactory . ( I7a801 , b/481288291 )

Version 1.0.0-alpha11

February 25, 2026

androidx.xr.arcore:arcore-*:1.0.0-alpha11 is released. Version 1.0.0-alpha11 contains these commits .

Version 1.0.0-alpha10

January 28, 2026

androidx.xr.arcore:arcore-*:1.0.0-alpha10 is released. Version 1.0.0-alpha10 contains these commits .

New Features

  • Introduces TiltGesture API, providing a reactive Flow for stable detection of device tilt (UP/DOWN) state with transition progress. ( Ic269f , b/448152779 )
  • ARCore for Jetpack XR now uses the XR Runtime Logging mechanism. See androidx.xr.runtime.Log for more information. ( l52735 , b/448697662 )

API Changes

  • Geospatial.createPoseFromGeospatialPose now works on OpenXR-enabled devices. ( l362c6 )

Version 1.0.0-alpha09

December 03, 2025

androidx.xr.arcore:arcore-*:1.0.0-alpha09 is released. Version 1.0.0-alpha09 contains these commits .

Version 1.0.0-alpha08

November 19, 2025

androidx.xr.arcore:arcore-*:1.0.0-alpha08 is released. Version 1.0.0-alpha08 contains these commits .

New Features

  • ARCore for Jetpack XR now supports devices where Google Play Services for AR is available.
  • Added Geospatial APIs for VPS Availability and pose conversion ( I144dc )

Version 1.0.0-alpha07

October 22, 2025

androidx.xr.arcore:arcore-*:1.0.0-alpha07 is released. Version 1.0.0-alpha07 contains these commits .

Bug Fixes

  • :xr:arcore:arcore-openxr added as an implementation dependency to :xr:arcore:arcore ( I47315 , b/446999229 )

Version 1.0.0-alpha06

September 24, 2025

androidx.xr.arcore:arcore-*:1.0.0-alpha06 is released. Version 1.0.0-alpha06 contains these commits .

API Changes

  • Testing support for ARCore has migrated to the xr:arcore:arcore-testing module. ( I25469 )
  • Adding ArDevice and RenderViewpoint to allow applications to retrieve the device's pose and display configuration for rendering purposes. ( Ib7e3f )
  • Rename HandJointType enums with HAND_JOINT_TYPE_ prefix. ( I3f7cd )
  • HandJointType has been moved to xr:arcore:arcore from xr:runtime:runtime . ( Iadb9c , b/409058039 )
  • Hand.State now exposes a java.nio.FloatBuffer with the joint poses in a format that allows easy access to performance-oriented applications. ( I55e27 )

Version 1.0.0-alpha05

July 30, 2025

androidx.xr.arcore:arcore:1.0.0-alpha05 , androidx.xr.arcore:arcore-guava:1.0.0-alpha05 , and androidx.xr.arcore:arcore-rxjava3:1.0.0-alpha05 are released. Version 1.0.0-alpha05 contains these commits .

New Features

  • Add getPrimaryHandSide so the developer could get the hand side info ( I270bd )
  • Add geospatial check VPS availability API ( I58573 )
  • Add ARCore API for checkVpsAvailability ( Idbded )
  • stateFlowable extension functions added to :xr:arcore:arcore-rxjava3 for usage by Java developers. ( I083aa , b/427247794 )

API Changes

  • Config *Mode vals have been renamed to reflect their behavior. ( I6d247 , b/414648065 )
  • The main ARCore artifact (xr:arcore:arcore) will only contain Kotlin-style async APIs. Java developers can depend on the xr:arcore:arcore-rxjava3 library to access compatible APIs. ( Ia525e , b/422794329 )
  • The main ARCore artifact ( xr:scenecore:scenecore ) will only contain Kotlin-style async APIs. Java developers can depend on the xr:arcore:arcore-guava library to access compatible APIs. ( Iffcb4 , b/422773524 )
  • Anchor.persistAsync() added to AnchorGuava for usage by Java developers. ( I4af1c , b/425984631 )
  • Earth.createAnchorOnSurfaceAsync(Session, Double, Double, Double, Quaternion, Surface) added to EarthGuava for usage by Java developers. ( I66357 , b/425992992 )
  • Java developers will use the extension functions for GltfModel.createAsync in GltfModel.kt . Async functions in GltfModel will be deleted. ( I0af60 )
  • This library now uses JSpecify nullness annotations , which are type-use. Kotlin developers should use the following compiler argument to enforce correct usage: -Xjspecify-annotations=strict (this is the default starting with version 2.1.0 of the Kotlin compiler) ( Ia8420 , b/326456246 )
  • subscribeAsFlowable extension functions added to :xr:arcore:arcore-rxjava3 for usage by Java developers. ( Id3e49 , b/427277298 )

Version 1.0.0-alpha04

May 7, 2025

androidx.xr.arcore:arcore:1.0.0-alpha04 is released. Version 1.0.0-alpha04 contains these commits .

API Changes

  • Projects released with Kotlin 2.0 require KGP 2.0.0 or newer to be consumed. ( Idb6b5 )
  • TrackingState and HandJointType have been moved from ARCore to Runtime.
  • Hand.State.isActive (boolean) has been changed to Hand.State.trackingState (androidx.xr.runtime.TrackingState) .
  • Anchor.load returns Anchor.AnchorLoadInvalidUuid if the UUID is invalid.

Version 1.0.0-alpha03

February 26, 2025

androidx.xr.arcore:arcore:1.0.0-alpha03 is released with no notable changes since the last alpha. Version 1.0.0-alpha03 contains these commits .

Version 1.0.0-alpha02

February 12, 2025

androidx.xr.arcore:arcore:1.0.0-alpha02 is released. Version 1.0.0-alpha02 contains these commits .

New Features

  • Added hand tracking support. Use Hand.left and Hand.right to access the tracking information.
  • APIs that generate an anchor ( Anchor.create , Anchor.load , Plane.createAnchor ) now all return AnchorCreateResult and properly implement AnchorCreateResourcesExhausted .

বাগ সংশোধন

  • Anchor.detach no longer causes a fatal crash due to a race condition with the Session update thread.
  • Anchor.create is more stable when running on an emulator

Version 1.0.0-alpha01

December 12, 2024

androidx.xr.arcore:arcore-* 1.0.0-alpha01 is released.

Features of initial release

Inspired by the existing ARCore library, the ARCore for Jetpack XR library provides capabilities for blending digital content with the real world. This library includes motion tracking, persistent anchors, hit testing, and plane identification with semantic labeling (for example, floor, walls, and tabletops). View the developer guide to learn more about working with ARCore for Jetpack XR.

  • Session : ARCore for Jetpack XR uses the Jetpack XR Runtime under-the-hood to power its functionality. You will use a Session to interact with most ARCore for Jetpack XR APIs, so please take a look at its documentation.

  • Plane : Use planes to understand the world around you. Each plane has a Label that describes it semantically. You can use subscribe to be notified about the latest detected planes or state to be notified about the changes to a specific plane.

  • Anchor : A link between a virtual object and a real world location. Anchors can be attached to a specific location in space (using create ) or a Trackable (using createAnchor ).

    • Anchors can be reused across sessions. You can use persist to store them, getPersistedAnchorUuids to enumerate them and load to retrieve them. Make sure that you unpersist them once they are no longer in use.

    • Anchors are interoperable between ARCore for Jetpack XR and Jetpack SceneCore. You can create an AnchorEntity using an anchor or, if you have an existing AnchorEntity, you can use getAnchor to retrieve its backing anchor.

    • Offer natural user interactions using hitTest . A hitTest uses a Ray to determine which contents it intersects and to create an Anchor from that location. Consider conducting a hitTest from an InputEvent .

Known Issues

  • There might be a delay between calling unpersist and its UUID being removed from the results returned by getPersistedAnchorUuids .

  • create will not validate that the system has enough resources to return new anchors. Creating an excessive amount of anchors might lead to a crash.

  • Persisting an Anchor that was previously persisted and unpersisted is not currently supported.

  • Usage in the emulator is supported, but the behavior might not be as stable as when running on an actual device. Particularly, calls to create might fail with a native code error and immediately terminate the activity.

  • In certain circumstances, a RuntimeException might be erroneously thrown when calling persist with the message “Anchor was not persisted”. In those circumstances, the function would still succeed and the anchor will be persisted. We recommend wrapping the call to persist with a try block as a workaround.