Jetpack XR-এর জন্য ARCore
| সর্বশেষ আপডেট | স্থিতিশীল রিলিজ | রিলিজ প্রার্থী | বিটা রিলিজ | আলফা রিলিজ |
|---|---|---|---|---|
| ২৫ মার্চ, ২০২৬ | - | - | - | ১.০.০-আলফা১২ |
নির্ভরতা ঘোষণা করা
Jetpack XR-এর জন্য ARCore-এর উপর নির্ভরতা যোগ করতে, আপনাকে আপনার প্রোজেক্টে Google Maven রিপোজিটরি যোগ করতে হবে। আরও তথ্যের জন্য Google-এর Maven রিপোজিটরি পড়ুন।
আপনার অ্যাপ বা মডিউলের build.gradle ফাইলে প্রয়োজনীয় আর্টিফ্যাক্টগুলোর ডিপেন্ডেন্সি যোগ করুন:
Groovy
dependencies { implementation "androidx.xr.arcore:arcore:1.0.0-alpha12" // Optional dependencies for asynchronous conversions implementation "androidx.xr.arcore:arcore-guava:1.0.0-alpha12" implementation "androidx.xr.arcore:arcore-rxjava3:1.0.0-alpha12" }
Kotlin
dependencies { implementation("androidx.xr.arcore:arcore:1.0.0-alpha12") // Optional dependencies for asynchronous conversions implementation("androidx.xr.arcore:arcore-guava:1.0.0-alpha12") implementation("androidx.xr.arcore:arcore-rxjava3:1.0.0-alpha12") }
নির্ভরতা সম্পর্কে আরও তথ্যের জন্য, 'বিল্ড নির্ভরতা যোগ করুন ' দেখুন।
প্রতিক্রিয়া
আপনার মতামত জেটপ্যাককে আরও উন্নত করতে সাহায্য করে। আপনি যদি নতুন কোনো সমস্যা খুঁজে পান অথবা এই লাইব্রেরিটি উন্নত করার জন্য কোনো ধারণা থাকে, তবে আমাদের জানান। নতুন কোনো সমস্যা তৈরি করার আগে অনুগ্রহ করে এই লাইব্রেরির বিদ্যমান সমস্যাগুলো দেখে নিন। আপনি তারকা বোতামে ক্লিক করে কোনো বিদ্যমান সমস্যায় আপনার ভোট যোগ করতে পারেন।
আরও তথ্যের জন্য ইস্যু ট্র্যাকার ডকুমেন্টেশন দেখুন।
সংস্করণ ১.০
সংস্করণ 1.0.0-alpha12
২৫ মার্চ, ২০২৬
androidx.xr.arcore:arcore-*:1.0.0-alpha12 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-alpha12-এ এই কমিটগুলো অন্তর্ভুক্ত রয়েছে।
এপিআই পরিবর্তন
-
Config.augmentedObjectCategoriesList থেকে 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_LIMITFakeRuntimeAnchor.anchorResourceLimitএ পরিবর্তন করা হয়েছে। ( I90841 , b/431992235 ) -
TiltGestureAPI-কে পরীক্ষামূলক করা হচ্ছে কারণ এটি ভবিষ্যতে পরিবর্তন বা অপসারণ করা হতে পারে। এই এপিআই ব্যবহার করতে,@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-এ এই কমিটগুলো অন্তর্ভুক্ত রয়েছে।
নতুন বৈশিষ্ট্য
-
TiltGestureAPI চালু করা হয়েছে, যা ডিভাইসের কাত (উপর/নিচ) অবস্থা স্থিতিশীলভাবে শনাক্ত করার জন্য এবং এর পরিবর্তনের অগ্রগতি পর্যবেক্ষণের জন্য একটি প্রতিক্রিয়াশীল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 ) -
HandJointTypexr:xr:runtime:runtimexr: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এবংHandJointTypeARCore থেকে Runtime-এ স্থানান্তর করা হয়েছে। -
Hand.State.isActive (boolean)পরিবর্তন করেHand.State.trackingState (androidx.xr.runtime.TrackingState)করা হয়েছে। - UUID-টি অবৈধ হলে
Anchor.loadAnchor.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ব্লকের মধ্যে রাখার পরামর্শ দিই।
এই পৃষ্ঠার কন্টেন্ট ও কোডের নমুনাগুলি Content License-এ বর্ণিত লাইসেন্সের অধীনস্থ। Java এবং OpenJDK হল Oracle এবং/অথবা তার অ্যাফিলিয়েট সংস্থার রেজিস্টার্ড ট্রেডমার্ক।
2026-03-25 UTC-তে শেষবার আপডেট করা হয়েছে।