বিভিন্ন স্ক্রিন ও অ্যাপের মধ্যে নেভিগেট করা হল ব্যবহারকারীর অভিজ্ঞতার একটি মূল অংশ। নিম্নলিখিত নীতিগুলি বিভিন্ন অ্যাপ জুড়ে ধারাবাহিক এবং সহজ ব্যবহারকারীর অভিজ্ঞতার জন্য একটি বেসলাইন সেট করে। নেভিগেশন কম্পোনেন্ট ডিফল্ট হিসেবে এইসব নীতি প্রয়োগ করার জন্য ডিজাইন করা হয়েছে, যাতে ব্যবহারকারীরা এক অ্যাপ থেকে অন্য অ্যাপে যাওয়ার সময় নেভিগেশনে একই হিউরিস্টিক ও প্যাটার্ন প্রয়োগ করতে পারেন।
শুরুর গন্তব্য ঠিক করা হয়েছে
আপনার তৈরি করা প্রতিটি অ্যাপের একটি নির্দিষ্ট শুরুর গন্তব্য থাকে। লঞ্চার থেকে আপনার অ্যাপ লঞ্চ করার পরে ব্যবহারকারী প্রথম যে স্ক্রিনটি দেখতে পান সেটি হল এটি। এছাড়াও, ব্যবহারকারী ফিরে যান বোতাম প্রেস করে লঞ্চারে ফিরে আসার সময় এই গন্তব্যটিই শেষ স্ক্রিন হিসেবে দেখতে পান। উদাহরণ হিসেবে Sunflower অ্যাপ দেখে নেওয়া যাক।

ছবি ১. তালিকা স্ক্রিন হল Sunflower অ্যাপের স্টার্ট ডেস্টিনেশন।
লঞ্চার থেকে Sunflower অ্যাপ লঞ্চ করার সময়, ব্যবহারকারী প্রথম যে স্ক্রিনটি দেখতে পান সেটি হল তালিকা স্ক্রিন, তার বাগানের উদ্ভিদের তালিকা। এছাড়াও, অ্যাপ থেকে বেরিয়ে আসার আগে এটিই হল শেষ স্ক্রিন যা তারা দেখতে পান। তালিকার স্ক্রিন থেকে তারা ফিরে যাওয়ার বোতাম প্রেস করলে, লঞ্চারে ফিরে যান।
নেভিগেশন স্টেটকে গন্তব্যের স্ট্যাক হিসেবে দেখানো হয়
আপনার অ্যাপ প্রথমবার লঞ্চ করা হলে, ব্যবহারকারীর জন্য একটি নতুন টাস্ক তৈরি করা হয় এবং অ্যাপটি তার শুরু করার গন্তব্য দেখায়। এটি ব্যাক স্ট্যাক নামে পরিচিত গন্তব্যের বেস হয়ে যায় এবং আপনার অ্যাপের নেভিগেশন স্ট্যাটাসের ভিত্তি হিসেবে কাজ করে। স্ট্যাকের সবচেয়ে উপরে বর্তমান স্ক্রিন থাকে এবং স্ট্যাকের আগের গন্তব্যগুলি আপনি কোথায় কোথায় গেছেন তার ইতিহাস দেখায়। ব্যাক স্ট্যাকের একদম নিচে সবসময় অ্যাপের স্টার্ট ডেস্টিনেশন থাকে।
ব্যাক স্ট্যাক পরিবর্তন করে এমন অপারেশন সবসময় স্ট্যাকের সবচেয়ে উপরে কাজ করে, হয় স্ট্যাকের সবচেয়ে উপরে নতুন গন্তব্য পুশ করে অথবা স্ট্যাক থেকে সবচেয়ে উপরের গন্তব্য পপ করে। কোনও গন্তব্যে নেভিগেট করলে, সেই গন্তব্যটি স্ট্যাকের সবচেয়ে উপরে চলে আসে।
নেভিগেশন কম্পোনেন্ট আপনার জন্য সব ব্যাক স্ট্যাক অর্ডারিং ম্যানেজ করে, যদিও আপনি নিজেও ব্যাক স্ট্যাক ম্যানেজ করার বিকল্প বেছে নিতে পারেন।
আপনার অ্যাপের টাস্কের মধ্যে 'উপরে' এবং 'ফিরে যান' একই রকম

ছবি ২. 'উপরে' ও 'ফিরে যান' বোতাম
'ফিরে যান' বোতামটি স্ক্রিনের নিচে সিস্টেম নেভিগেশন বারে দেখা যায় এবং ব্যবহারকারী সম্প্রতি যেসব স্ক্রিনে কাজ করেছেন সেগুলির ইতিহাস বিপরীত-কালানুক্রমিক ক্রমে নেভিগেট করতে ব্যবহার করা হয়। আপনি ফিরে যান বোতাম প্রেস করলে, বর্তমান গন্তব্য ব্যাক স্ট্যাকের উপর থেকে পপ অফ হয়ে যায় এবং আপনি তারপর আগের গন্তব্যে নেভিগেট করেন।
স্ক্রিনের সবচেয়ে উপরে অ্যাপ বারে 'উপরের দিকে' বোতামটি দেখা যায়। আপনার অ্যাপের টাস্কের মধ্যে, 'উপরে' এবং 'ফিরে যান' বোতাম একই রকম আচরণ করে।
'উপরের দিকে নেভিগেট করার বোতাম' ব্যবহার করলে আপনার অ্যাপ কখনও বন্ধ হয় না
ব্যবহারকারী অ্যাপের স্টার্ট ডেস্টিনেশনে থাকলে, 'উপরে' বোতামটি দেখা যায় না, কারণ 'উপরে' বোতামটি কখনই অ্যাপ থেকে বেরিয়ে আসে না। তবে, 'ফিরে যান' বোতামটি দেখানো হয় এবং এটি অ্যাপ থেকে বেরিয়ে আসে।
অন্য অ্যাপের টাস্কে ডিপ লিঙ্ক ব্যবহার করে আপনার অ্যাপ লঞ্চ করা হলে, 'আপ' বোতাম ব্যবহারকারীকে আপনার অ্যাপের টাস্কে ফিরিয়ে নিয়ে যায় এবং সিমুলেটেড ব্যাক স্ট্যাক-এর মাধ্যমে নিয়ে যায়, যে অ্যাপ ডিপ লিঙ্ক ট্রিগার করেছে সেখানে নয়। তবে, 'ফিরে যান' বোতামে ক্লিক করলে আপনি অন্য অ্যাপে ফিরে যেতে পারবেন।
ডিপ লিঙ্কিং ম্যানুয়াল নেভিগেশন সিমুলেট করে
ডিপ লিঙ্কিং বা ম্যানুয়ালি কোনও নির্দিষ্ট গন্তব্যে নেভিগেট করার সময়, আপনি 'উপরের দিকে' বোতাম ব্যবহার করে গন্তব্যগুলির মাধ্যমে নেভিগেট করে শুরুর গন্তব্যে ফিরে যেতে পারবেন।
আপনার অ্যাপের টাস্কের মধ্যে কোনও ডেস্টিনেশনে ডিপ লিঙ্ক করার সময়, আপনার অ্যাপের টাস্কের জন্য আগে থেকে থাকা যেকোনও ব্যাক স্ট্যাক সরিয়ে দেওয়া হয় এবং ডিপ-লিঙ্ক করা ব্যাক স্ট্যাক দিয়ে তা পরিবর্তন করা হয়।
Sunflower অ্যাপের উদাহরণ আবার ব্যবহার করে, ধরা যাক ব্যবহারকারী আগে লঞ্চার স্ক্রিন থেকে অ্যাপটি চালু করেছিলেন এবং আপেলের জন্য বিস্তারিত স্ক্রিনে নেভিগেট করেছিলেন। সাম্প্রতিক স্ক্রিন দেখলে বোঝা যাবে যে একটি টাস্ক রয়েছে এবং সবচেয়ে উপরের স্ক্রিনটি হল Apple-এর জন্য বিস্তারিত স্ক্রিন।

ছবি ৩. Sunflower অ্যাপের মাধ্যমে ব্যবহারকারীর নেভিগেশন এবং এর ফলে তৈরি হওয়া ব্যাক স্ট্যাক।
এই সময়, ব্যবহারকারী হোম বোতামে ট্যাপ করে অ্যাপটি ব্যাকগ্রাউন্ডে পাঠাতে পারেন। এরপর, ধরা যাক এই অ্যাপে ডিপ লিঙ্ক ফিচার আছে যা ব্যবহারকারীকে নাম দিয়ে সরাসরি নির্দিষ্ট উদ্ভিদের বিবরণ স্ক্রিনে যেতে দেয়। এই ডিপ লিঙ্কের মাধ্যমে অ্যাপটি খুললে, ছবি ৩-এ দেখানো বর্তমান Sunflower ব্যাক স্ট্যাকটি সম্পূর্ণভাবে ছবি ৪-এ দেখানো নতুন ব্যাক স্ট্যাক দ্বারা প্রতিস্থাপিত হয়:

ছবি ৪. ডিপ লিঙ্ক অনুসরণ করলে Sunflower অ্যাপের জন্য আগে থেকে থাকা ব্যাক স্ট্যাক পরিবর্তিত হয়।
লক্ষ্য করুন যে Sunflower ব্যাক স্ট্যাকটি সিন্থেটিক ব্যাক স্ট্যাক দ্বারা প্রতিস্থাপিত হয়েছে যার উপরে অ্যাভোকাডো ডিটেল স্ক্রিন রয়েছে। My Garden স্ক্রিন, যা হল শুরুর গন্তব্য, সেটিও ব্যাক স্ট্যাকে যোগ করা হয়েছে। Sunflower-এর আসল ব্যাক স্ট্যাক আর নেই, এর মধ্যে অ্যাপের কাছে থাকা এই তথ্যও অন্তর্ভুক্ত যে ব্যবহারকারী আগে Apple বিবরণ স্ক্রিনে ছিলেন। এইসব কিছু গুরুত্বপূর্ণ কারণ সিন্থেটিক ব্যাক স্ট্যাক বাস্তবসম্মত হতে হবে। এটি এমন একটি ব্যাক স্ট্যাকের সাথে ম্যাচ করতে হবে যা অ্যাপের মাধ্যমে অর্গ্যানিক নেভিগেশনের মাধ্যমে অর্জন করা যেতে পারে।
এই প্রয়োজন পূরণ করতে, যে সিন্থেটিক ব্যাক স্ট্যাক তৈরি করা হয় সেটি NavGraph-এর উপর ভিত্তি করে তৈরি করা একটি সরলীকৃত ভার্সন। নেস্টিং ছাড়া সাধারণ NavGraph-এর জন্য, এতে
শুরুর গন্তব্য এবং ডিপ লিঙ্ক গন্তব্য থাকবে। আরও
জটিল, নেস্টেড নেভিগেশন গ্রাফের জন্য,
সিন্থেটিক ব্যাক স্ট্যাকে ডিপ লিঙ্ক গন্তব্যের পূর্বসূরি যেকোনও নেস্টেড
গ্রাফের শুরুর গন্তব্যও থাকবে।
নেভিগেশন কম্পোনেন্ট ডিপ লিঙ্কিং সাপোর্ট করে এবং আপনার নেভিগেশন গ্রাফে কোনও ডেস্টিনেশনে লিঙ্ক করার সময় আপনার জন্য একটি বাস্তবসম্মত ব্যাক স্ট্যাক আবার তৈরি করে।