অ্যান্ড্রয়েড 10 (API লেভেল 29) থেকে শুরু করে, অ্যান্ড্রয়েড সিস্টেম সম্পূর্ণরূপে অঙ্গভঙ্গি-ভিত্তিক নেভিগেশন সমর্থন করে। তাদের অ্যাপ এই বৈশিষ্ট্যের সাথে সামঞ্জস্যপূর্ণ কিনা তা নিশ্চিত করতে অ্যাপ বিকাশকারীদের অবশ্যই দুটি জিনিস করতে হবে:
- অ্যাপের বিষয়বস্তু প্রান্ত থেকে প্রান্তে প্রসারিত করুন।
- বিরোধপূর্ণ অ্যাপ অঙ্গভঙ্গি পরিচালনা করুন।
এছাড়াও, Android 13 (API লেভেল 33) ফোন, বড় স্ক্রীন এবং ফোল্ডেবলের মতো অ্যান্ড্রয়েড ডিভাইসগুলির জন্য একটি ভবিষ্যদ্বাণীমূলক ব্যাক জেসচার প্রবর্তন করে যা বহু বছরের রিলিজের অংশ। অ্যাপ বিকাশকারীরা তাদের অ্যাপগুলি ভবিষ্যদ্বাণীমূলক ব্যাক জেসচার সমর্থন করে তা নিশ্চিত করার জন্য পদক্ষেপ নিতে পারে।
এজ-টু-এজ অ্যাপ কন্টেন্ট প্রদান করুন
ভাসমান নেভিগেশন বার দ্বারা উপলব্ধ অতিরিক্ত স্ক্রীন স্থানের সুবিধা নিতে, আপনাকে আপনার অ্যাপে কিছু পরিবর্তন কনফিগার করতে হবে।
বিস্তারিত জানার জন্য আপনার অ্যাপে কন্টেন্ট এজ-টু-এজ দেখুন।
বিরোধপূর্ণ অ্যাপ অঙ্গভঙ্গি পরিচালনা করুন
অঙ্গভঙ্গি নেভিগেশন মডেল পূর্বে অ্যাপ ডেভেলপারদের দ্বারা ব্যবহৃত অঙ্গভঙ্গির সাথে বিরোধপূর্ণ হতে পারে। ফলস্বরূপ আপনার অ্যাপের ইউজার ইন্টারফেসে আপনাকে সামঞ্জস্য করতে হতে পারে।
পিছনের অঙ্গভঙ্গির সাথে দ্বন্দ্ব
পিছনের জন্য নতুন সিস্টেম জেসচার হল স্ক্রিনের বাম বা ডান প্রান্ত থেকে একটি অভ্যন্তরীণ সোয়াইপ। এটি সেই এলাকায় অ্যাপ নেভিগেশন উপাদানগুলির সাথে হস্তক্ষেপ করতে পারে। স্ক্রিনের বাম এবং ডান প্রান্তে উপাদানগুলির কার্যকারিতা বজায় রাখতে, কোন অঞ্চলে স্পর্শ ইনপুট গ্রহণ করতে হবে তা সিস্টেমকে নির্দেশ করে বেছে বেছে পিছনের অঙ্গভঙ্গি থেকে অপ্ট আউট করুন৷ আপনি Android 10-এ প্রবর্তিত View.setSystemGestureExclusionRects()
API-এ একটি List<Rect>
পাস করে এটি করতে পারেন। এই পদ্ধতিটি androidx.core:core:1.1.0-dev01
হিসাবে ViewCompat
এও উপলব্ধ।
যেমন:
কোটলিন
var exclusionRects = listOf(rect1, rect2, rect3) fun onLayout( changedCanvas: Boolean, left: Int, top: Int, right: Int, bottom: Int) { // Update rect bounds and the exclusionRects list setSystemGestureExclusionRects(exclusionRects) } fun onDraw(canvas: Canvas) { // Update rect bounds and the exclusionRects list setSystemGestureExclusionRects(exclusionRects) }
জাভা
List<Rect> exclusionRects; public void onLayout( boolean changedCanvas, int left, int top, int right, int bottom) { // Update rect bounds and the exclusionRects list setSystemGestureExclusionRects(exclusionRects); } public void onDraw(Canvas canvas) { // Update rect bounds and the exclusionRects list setSystemGestureExclusionRects(exclusionRects); }
বাড়িতে বা দ্রুত-সুইচ অঙ্গভঙ্গি সঙ্গে দ্বন্দ্ব
বাড়ির জন্য নতুন সিস্টেম অঙ্গভঙ্গি এবং দ্রুত স্যুইচ উভয়ই নেভি বার দ্বারা দখলকৃত স্থানটিতে স্ক্রিনের নীচে সোয়াইপগুলিকে অন্তর্ভুক্ত করে। অ্যাপগুলি এই অঙ্গভঙ্গিগুলি থেকে অপ্ট আউট করতে পারে না যেমনটি তারা পিছনের অঙ্গভঙ্গি দিয়ে করতে পারে৷
এই সমস্যা প্রশমিত করার জন্য, Android 10 WindowInsets.getMandatorySystemGestureInsets()
API প্রবর্তন করেছে, যা অ্যাপগুলিকে স্পর্শ শনাক্তকরণ থ্রেশহোল্ড সম্পর্কে অবহিত করে।
গেমস এবং অন্যান্য নন-ভিউ অ্যাপ
গেম এবং অন্যান্য অ্যাপ যেগুলির ভিউ হায়ারার্কি নেই সেগুলির জন্য প্রায়শই ব্যবহারকারীকে সিস্টেম জেসচার এলাকার কাছাকাছি সোয়াইপ করতে হয়। এই ক্ষেত্রে, গেমগুলি Window.setSystemGestureExclusionRects()
ব্যবহার করতে পারে এমন অঞ্চলগুলি বাদ দিতে যা সিস্টেম অঙ্গভঙ্গির জন্য সংরক্ষিত এলাকার সাথে ওভারল্যাপ করে৷ গেমগুলিকে অবশ্যই নিশ্চিত করতে হবে যে শুধুমাত্র প্রয়োজন হলেই এই এলাকাগুলি বাদ দেওয়া হবে, যেমন গেমপ্লে চলাকালীন৷
যদি কোনও গেমের জন্য ব্যবহারকারীকে বাড়ির অঙ্গভঙ্গি এলাকার কাছাকাছি সোয়াইপ করতে হয়, অ্যাপটি নিমজ্জিত মোডে রাখার অনুরোধ করতে পারে। ব্যবহারকারী গেমটির সাথে ইন্টারঅ্যাক্ট করার সময় এটি সিস্টেমের অঙ্গভঙ্গিগুলিকে অক্ষম করে, তবে ব্যবহারকারীকে স্ক্রিনের নীচে থেকে সোয়াইপ করে সিস্টেম অঙ্গভঙ্গিগুলি পুনরায় সক্ষম করতে দেয়৷
ভবিষ্যদ্বাণীমূলক পিছনের অঙ্গভঙ্গি সমর্থন করতে আপনার অ্যাপ আপডেট করুন
Android 13 (API লেভেল 33) ফোন, বড় স্ক্রীন এবং ফোল্ডেবলের মতো অ্যান্ড্রয়েড ডিভাইসগুলির জন্য একটি ভবিষ্যদ্বাণীমূলক ব্যাক জেসচার প্রবর্তন করে। ভবিষ্যদ্বাণীপূর্ণ পিছনের অঙ্গভঙ্গি একটি বহু বছরের রিলিজের অংশ। সম্পূর্ণরূপে প্রয়োগ করা হলে, এই বৈশিষ্ট্যটি ব্যবহারকারীদের সম্পূর্ণরূপে সম্পূর্ণ করার আগে গন্তব্য বা পিছনের অঙ্গভঙ্গির অন্যান্য ফলাফলের পূর্বরূপ দেখতে দেয়, তাদের সিদ্ধান্ত নিতে দেয় যে তারা বর্তমান দৃশ্যে চালিয়ে যাবেন নাকি থাকবেন।
বিশদ বিবরণের জন্য ভবিষ্যদ্বাণীমূলক পিছনের অঙ্গভঙ্গির জন্য সমর্থন যোগ করুন দেখুন।
অতিরিক্ত সম্পদ
অঙ্গভঙ্গি নেভিগেশন সম্পর্কে আরও জানতে, নিম্নলিখিত দেখুন: