অভিযোজিত অ্যাপ তৈরি করা

ট্যাবলেট, ফোল্ডেবল, ChromeOS ডিভাইস, কার ডিসপ্লে, এবং টিভি সহ 300 মিলিয়নেরও বেশি Android বড় স্ক্রীন ডিভাইসগুলি আজ ব্যবহার করা হচ্ছে, আরও কিছু ক্রমাগত আসছে৷ বড় স্ক্রীন ডিভাইসের ক্রমবর্ধমান সংখ্যা এবং বৈচিত্র্যের উপর একটি সর্বোত্তম ব্যবহারকারীর অভিজ্ঞতা প্রদান করতে - সেইসাথে স্ট্যান্ডার্ড ফোনে - অভিযোজিত অ্যাপ তৈরি করুন

অভিযোজিত অ্যাপ্লিকেশন কি?

অভিযোজিত অ্যাপগুলি অ্যাপ প্রদর্শনের পরিবর্তনের উপর ভিত্তি করে লেআউট পরিবর্তন করে, প্রাথমিকভাবে অ্যাপ উইন্ডোর আকার। কিন্তু অভিযোজিত অ্যাপগুলি ভাঁজ করা যায় এমন ডিভাইসের ভঙ্গি, যেমন ট্যাবলেটপ বা বইয়ের ভঙ্গি এবং স্ক্রীনের ঘনত্ব এবং ফন্টের আকারের পরিবর্তনগুলিকে মিটমাট করে।

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

চিত্র 1. অভিযোজিত অ্যাপ্লিকেশন বিভিন্ন উইন্ডো আকারের জন্য বিন্যাস অপ্টিমাইজ করে।

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

অভিযোজিত অ্যাপ্লিকেশনগুলি দেখতে দুর্দান্ত দেখায় এবং যে কোনও কনফিগারেশনে যে কোনও ডিভাইসে ভাল কাজ করে।

কেন অভিযোজিত UIs নির্মাণ?

ব্যবহারকারীরা আশা করে যে আপনার অ্যাপটি তাদের সমস্ত ডিভাইসে ত্রুটিহীনভাবে কাজ করবে এবং বড় স্ক্রিনে উন্নত ক্ষমতা প্রদান করবে। একটি বর্ধিত অ্যাপ অভিজ্ঞতা এবং বর্ধিত উত্পাদনশীলতার জন্য ব্যবহারকারীরা মাল্টি-উইন্ডো মোডে মাল্টিটাস্ক করে।

স্ট্যান্ডার্ড ফোনে সিঙ্গেল-টাস্কিং-এর মধ্যে সীমাবদ্ধ অ্যাপগুলি বিভিন্ন সম্ভাবনার একটি বর্ধিত ব্যবহারকারী বেস মিস করে।

গুগল প্লে

Google Play ট্যাবলেট- এবং ভাঁজযোগ্য-নির্দিষ্ট অ্যাপ সংগ্রহ এবং সুপারিশ প্রদান করে, যা ব্যবহারকারীদের উচ্চ-মানের অ্যাপ আবিষ্কার করতে সক্ষম করে।

প্লে র‍্যাঙ্ক অ্যাপ এবং গেমগুলি অপ্টিমাইজ করা অ্যাপগুলির চেয়ে বড় স্ক্রিনের জন্য অপ্টিমাইজ করা হয়েছে৷ র‍্যাঙ্কিং বড় স্ক্রিনের অ্যাপের গুণমানের নির্দেশিকাগুলির উপর ভিত্তি করে। উচ্চতর র‌্যাঙ্কিং মাল্টি-ডিভাইস ব্যবহারকারীদের তাদের ফোনে বড় স্ক্রীন-নির্দিষ্ট রেটিং এবং পর্যালোচনা দেখতে সক্ষম করে আবিষ্কারযোগ্যতা বাড়ায়।

যে অ্যাপগুলি প্লে স্টোরের বড় স্ক্রিনের মানের মান পূরণ করে না সেগুলি অ্যাপের বিবরণ পৃষ্ঠায় একটি সতর্কতা প্রদর্শন করে। সতর্কতা ব্যবহারকারীদের পরামর্শ দেয় যে অ্যাপটি তাদের বড় স্ক্রিনের ডিভাইসে ভাল পারফর্ম নাও করতে পারে।

চিত্র 2. অ্যাপের বিবরণ পৃষ্ঠায় প্রযুক্তিগত মানের সতর্কতা।

Google Play-এ আবিষ্কারযোগ্যতা বাড়াতে অভিযোজিত অ্যাপ তৈরি করুন এবং আপনার অ্যাপ ডাউনলোড করতে পারে এমন ডিভাইসের সংখ্যা সর্বাধিক করুন।

কিভাবে শুরু করবেন

পরিকল্পনা থেকে মোতায়েন পর্যন্ত অ্যাপ বিকাশের সমস্ত পর্যায়ে অভিযোজিত নকশা সম্পর্কে চিন্তা করুন। অভিযোজিত ডিজাইন সম্পর্কে গ্রাফিক ডিজাইনারদের অবহিত করুন। আপনার অ্যাপটিকে অভিযোজিত করার জন্য ডিজাইন করুন এবং আপনি এমন একটি অ্যাপ তৈরি করবেন যা পরিচালনাযোগ্য, এক্সটেনসিবল এবং ভবিষ্যতের ফর্ম ফ্যাক্টর এবং উইন্ডো মোডের জন্য প্রস্তুত।

একটি অভিযোজিত অ্যাপ্লিকেশন তৈরি করতে যা সমস্ত প্রদর্শন আকার এবং কনফিগারেশন সমর্থন করে, নিম্নলিখিতগুলি করুন:

  • লেআউট সিদ্ধান্ত নিতে উইন্ডো আকার ক্লাস ব্যবহার করুন
  • কম্পোজ ম্যাটেরিয়াল 3 অ্যাডাপটিভ লাইব্রেরি দিয়ে তৈরি করুন
  • স্পর্শের বাইরে ইনপুট সমর্থন
  • সমস্ত ধরণের ডিভাইসে পরীক্ষা করুন

উইন্ডো সাইজ ক্লাস

অ্যাপ উইন্ডোর মাত্রা বিভিন্ন ডিভাইসে ভিন্ন হতে পারে—অথবা ফোল্ডেবলের ক্ষেত্রে একই ডিভাইসে—এমনকি অ্যাপটি পূর্ণ স্ক্রীনে থাকলেও। বিভিন্ন ডিভাইস ওরিয়েন্টেশন বিভিন্ন আকৃতির অনুপাত তৈরি করে। মাল্টি-উইন্ডো মোডে, অ্যাপ উইন্ডোর আকার, আকৃতির অনুপাত, এবং অভিযোজন ডিভাইসের পর্দার থেকে আলাদা হতে পারে।

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

উইন্ডো আকারের ক্লাসগুলি উইন্ডোর প্রস্থ বা উচ্চতার উপর ভিত্তি করে অ্যাপ উইন্ডোগুলিকে কম্প্যাক্ট , মাঝারি বা প্রসারিত হিসাবে শ্রেণীবদ্ধ করে।

কমপ্যাক্ট, মাঝারি, এবং প্রসারিত প্রস্থ উইন্ডো আকারের ক্লাসের চিত্র।
চিত্র 3. প্রদর্শনের প্রস্থের উপর ভিত্তি করে উইন্ডো আকারের ক্লাস।

Compose Material 3 Adaptive লাইব্রেরির currentWindowAdaptiveInfo() শীর্ষ-স্তরের ফাংশন ব্যবহার করে আপনার অ্যাপের WindowSizeClass গণনা করুন। ফাংশনটি WindowAdaptiveInfo এর একটি উদাহরণ প্রদান করে, যাতে windowSizeClass রয়েছে। যখনই উইন্ডোর আকার শ্রেণী পরিবর্তিত হয় তখন আপনার অ্যাপ আপডেট পায়:

val windowSizeClass = currentWindowAdaptiveInfo().windowSizeClass

বিষয়বস্তুর ফলক

একটি কার্যকলাপের বিন্যাস কখনও কখনও একটি পর্দা হিসাবে উল্লেখ করা হয়. উদাহরণস্বরূপ, আপনার অ্যাপে একটি হোম স্ক্রীন, একটি তালিকা স্ক্রীন এবং একটি আইটেমের বিশদ স্ক্রীন থাকতে পারে। পরিভাষাটি বোঝায় যে প্রতিটি কার্যকলাপ ডিভাইসের স্ক্রীনকে পূর্ণ করে।

যাইহোক, প্রসারিত প্রস্থ উইন্ডো সাইজ ক্লাস সমর্থন করার জন্য যথেষ্ট বড় ডিভাইস স্ক্রীনে, একাধিক অ্যাক্টিভিটি স্ক্রীন একই সময়ে অনস্ক্রিন হতে পারে। প্যান হল স্বতন্ত্র ক্রিয়াকলাপের বিষয়বস্তু প্রদর্শনের জন্য আরও সুনির্দিষ্ট শব্দ।

উইন্ডোর আকারের ক্লাসগুলি আপনাকে ম্যাটেরিয়াল ডিজাইনে নির্দিষ্ট করা মাল্টি-পেন লেআউটে কতগুলি সামগ্রী প্যান দেখাতে হবে তা নির্ধারণ করতে সক্ষম করে৷

ডিভাইস স্ক্রিনগুলি প্যানে বিভক্ত: কমপ্যাক্ট এবং মাঝারি উইন্ডো আকারের ক্লাসে একটি ফলক, প্রসারিত উইন্ডো আকারের শ্রেণিতে দুটি প্যান।
চিত্র 4. উইন্ডো সাইজ ক্লাস প্রতি বিষয়বস্তু প্যানের সংখ্যা।

প্যানগুলি নৌযানযোগ্য। কমপ্যাক্ট এবং মাঝারি উইন্ডো আকারের ক্লাসগুলিতে, অ্যাপগুলি একটি একক ফলক প্রদর্শন করে; এবং তাই, যেকোনো গন্তব্যে নেভিগেশন একটি ফলক প্রদর্শন করে।

প্রসারিত উইন্ডো সাইজ ক্লাসে, অ্যাপগুলি একাধিক প্যানে সম্পর্কিত বিষয়বস্তু প্রদর্শন করতে পারে, যেমন একটি তালিকা-বিশদ বিন্যাস। উভয় প্যানে নেভিগেশন দুই-প্যান লেআউট প্রদর্শন করে। যদি উইন্ডোর আকার কমপ্যাক্ট বা মাঝারিতে পরিবর্তিত হয়, অভিযোজিত অ্যাপগুলি শুধুমাত্র একটি ফলক দেখায়, নেভিগেশন গন্তব্য, হয় তালিকা বা বিশদ।

চিত্র 5. নেভিগেশন লক্ষ্য হিসাবে তালিকা ফলক সহ তালিকা-বিশদ বিন্যাস।
চিত্র 6. নেভিগেশন লক্ষ্য হিসাবে বিশদ ফলক সহ তালিকা-বিশদ বিন্যাস।

রচনা উপাদান 3 অভিযোজিত

জেটপ্যাক কম্পোজ হল একাধিক লেআউট ফাইলের নকল এবং রক্ষণাবেক্ষণের বোঝা ছাড়াই অভিযোজিত অ্যাপ তৈরির জন্য আধুনিক, ঘোষণামূলক পদ্ধতি।

কম্পোজ ম্যাটেরিয়াল 3 অ্যাডাপটিভ লাইব্রেরিতে কম্পোজেবল রয়েছে যা উইন্ডো সাইজ ক্লাস, নেভিগেশন কম্পোনেন্ট, মাল্টি-পেন লেআউট এবং ফোল্ডেবল ভঙ্গি এবং কব্জা অবস্থান পরিচালনা করে, উদাহরণস্বরূপ:

  • NavigationSuiteScaffold : অ্যাপ উইন্ডোর আকার ক্লাস এবং ডিভাইসের ভঙ্গির উপর নির্ভর করে স্বয়ংক্রিয়ভাবে নেভিগেশন বার এবং নেভিগেশন রেলের মধ্যে স্যুইচ করে।

  • ListDetailPaneScaffold : তালিকা-বিশদ ক্যানোনিকাল লেআউট প্রয়োগ করে।

    অ্যাপ্লিকেশান উইন্ডো আকারে লেআউট মানিয়ে নেয়। প্রসারিত উইন্ডো সাইজ ক্লাসে পাশাপাশি প্যানেলে একটি তালিকা এবং একটি তালিকা আইটেমের বিশদ বিবরণ উপস্থাপন করে, তবে শুধুমাত্র তালিকা বা কম্প্যাক্ট এবং মাঝারি উইন্ডো আকারের ক্লাসের বিবরণ।

  • SupportingPaneScaffold : সমর্থনকারী প্যান ক্যানোনিকাল লেআউট প্রয়োগ করে।

    প্রসারিত উইন্ডো সাইজ ক্লাসে প্রধান বিষয়বস্তু ফলক এবং একটি সমর্থনকারী ফলক উপস্থাপন করে, তবে কমপ্যাক্ট এবং মাঝারি উইন্ডো আকারের ক্লাসে শুধুমাত্র প্রধান সামগ্রী ফলক।

কম্পোজ ম্যাটেরিয়াল 3 অ্যাডাপ্টিভ লাইব্রেরি হল অভিযোজিত অ্যাপ তৈরির জন্য নির্ভরতা থাকা আবশ্যক৷

কনফিগারেশন এবং ধারাবাহিকতা

অভিযোজিত অ্যাপগুলি কনফিগারেশন পরিবর্তনের সময় ধারাবাহিকতা বজায় রাখে।

একটি কনফিগারেশন পরিবর্তন ঘটে যখন অ্যাপ উইন্ডোর আকার পরিবর্তন করা হয়, একটি ভাঁজযোগ্য ভঙ্গি পরিবর্তন হয়, বা পর্দার ঘনত্ব বা ফন্ট পরিবর্তন হয়।

ডিফল্টরূপে, কনফিগারেশন পরিবর্তনগুলি অ্যাপের কার্যকলাপকে পুনরায় তৈরি করে এবং সমস্ত কার্যকলাপের অবস্থা হারিয়ে যায়। ধারাবাহিকতা বজায় রাখতে, অভিযোজিত অ্যাপগুলি কার্যকলাপের onSaveInstanceState() পদ্ধতিতে বা একটি ViewModel এ অবস্থা সংরক্ষণ করে।

ভঙ্গি

অভিযোজিত অ্যাপ্লিকেশনগুলি ভাঁজযোগ্য ডিভাইসগুলির ভঙ্গিতে পরিবর্তনের প্রতিক্রিয়া জানায়। ভঙ্গিতে টেবিলটপ এবং বইয়ের ভঙ্গি অন্তর্ভুক্ত।

চিত্র 7. টেবিলটপ ভঙ্গিতে ভাঁজযোগ্য ডিভাইস।

Jetpack WindowManager-এ WindowInfoTracker ইন্টারফেস আপনাকে ডিভাইসের জন্য DisplayFeature অবজেক্টের একটি তালিকা পেতে সক্ষম করে। ডিসপ্লে বৈশিষ্ট্যগুলির মধ্যে রয়েছে FoldingFeature.State , যা নির্দেশ করে যে ডিভাইসটি সম্পূর্ণ বা অর্ধেক খোলা।

Compose Material 3 Adaptive লাইব্রেরি currentWindowAdaptiveInfo() শীর্ষ-স্তরের ফাংশন প্রদান করে, যা windowPosture ধারণকারী WindowAdaptiveInfo এর একটি উদাহরণ প্রদান করে।

স্পর্শের বাইরে ইনপুট

ব্যবহারকারীরা প্রায়ই বাহ্যিক কীবোর্ড, ট্র্যাকপ্যাড, ইঁদুর এবং স্টাইলাসগুলিকে বড় স্ক্রীনের ডিভাইসগুলিতে সংযুক্ত করে। পেরিফেরিয়ালগুলি ব্যবহারকারীর উত্পাদনশীলতা, ইনপুট নির্ভুলতা, ব্যক্তিগত অভিব্যক্তি এবং অ্যাক্সেসযোগ্যতা বাড়ায়। বেশিরভাগ ChromeOS ডিভাইসে কীবোর্ড এবং ট্র্যাকপ্যাড অন্তর্নির্মিত থাকে।

অভিযোজিত অ্যাপ্লিকেশানগুলি বাহ্যিক ইনপুট ডিভাইসগুলিকে সমর্থন করে, তবে আপনার জন্য বেশিরভাগ কাজ Android ফ্রেমওয়ার্ক দ্বারা করা হয়:

  • জেটপ্যাক রচনা 1.7 এবং উচ্চতর: কীবোর্ড ট্যাব নেভিগেশন এবং মাউস বা ট্র্যাকপ্যাড ক্লিক, নির্বাচন এবং স্ক্রোল ডিফল্টরূপে সমর্থিত।

  • Jetpack androidx.compose.material3 লাইব্রেরি: ব্যবহারকারীদের একটি স্টাইলাস ব্যবহার করে যেকোনো TextField উপাদানে লিখতে সক্ষম করে।

  • কীবোর্ড শর্টকাট হেল্পার : অ্যান্ড্রয়েড প্ল্যাটফর্ম এবং অ্যাপ কীবোর্ড শর্টকাট ব্যবহারকারীদের দ্বারা আবিষ্কারযোগ্য করে তোলে। onProvideKeyboardShortcuts() উইন্ডো কলব্যাককে ওভাররাইড করে কীবোর্ড শর্টকাট হেল্পারে আপনার অ্যাপের কীবোর্ড শর্টকাটগুলি প্রকাশ করুন৷

সমস্ত আকারের ফর্ম ফ্যাক্টরগুলিকে সম্পূর্ণরূপে সমর্থন করতে, অভিযোজিত অ্যাপগুলি সমস্ত ধরণের ইনপুট সমর্থন করে৷

অভিযোজিত অ্যাপগুলি কীভাবে পরীক্ষা করবেন

বিভিন্ন স্ক্রীন এবং উইন্ডোর আকার এবং বিভিন্ন ডিভাইস কনফিগারেশন পরীক্ষা করুন । আপনার অ্যাপের লেআউটগুলি পরীক্ষা করতে হোস্ট-সাইড স্ক্রিনশট এবং কম্পোজ প্রিভিউ ব্যবহার করুন। অ্যান্ড্রয়েড স্টুডিও এমুলেটর এবং গুগল ডেটা সেন্টারে হোস্ট করা রিমোট অ্যান্ড্রয়েড ডিভাইসে আপনার অ্যাপ চালান।

বড় স্ক্রিনের অ্যাপের গুণমানের নির্দেশিকা

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

একাধিক কনফিগারেশন

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

DeviceConfigurationOverride.then() এক্সটেনশন ফাংশন দিয়ে, আপনি একই সময়ে একাধিক কনফিগারেশন প্যারামিটার পরীক্ষা করতে পারেন, যেমন ফন্ট সাইজ, লোকেল, থিম এবং লেআউট সাইজ।

হোস্ট-সাইড স্ক্রিনশট

হোস্ট-সাইড স্ক্রিনশট পরীক্ষা হল আপনার অ্যাপ লেআউটের ভিজ্যুয়াল চেহারা যাচাই করার একটি দ্রুত এবং মাপযোগ্য উপায়। বিভিন্ন ডিসপ্লে মাপের জন্য আপনার UI পরীক্ষা করতে হোস্ট-সাইড স্ক্রিনশট ব্যবহার করুন।

আরও তথ্যের জন্য, কম্পোজ প্রিভিউ স্ক্রিনশট টেস্টিং দেখুন।

পূর্বরূপ রচনা করুন

কম্পোজ প্রিভিউ আপনাকে অ্যান্ড্রয়েড স্টুডিওর ডিজাইন ভিউতে আপনার অ্যাপের UI চেক করতে সক্ষম করে। প্রিভিউগুলি আপনাকে বিভিন্ন কনফিগারেশনে সংমিশ্রণযোগ্য সামগ্রী দেখতে দেওয়ার জন্য @PreviewScreenSizes , @PreviewFontScale এবং @PreviewLightDark এর মতো টীকা ব্যবহার করে। এমনকি আপনি পূর্বরূপের সাথে ইন্টারঅ্যাক্ট করতে পারেন।

অ্যান্ড্রয়েড স্টুডিও প্রিভিউতে সাধারণ ব্যবহারযোগ্যতার সমস্যাগুলিও হাইলাইট করে, যেমন বোতাম বা টেক্সট ফিল্ড যা খুব প্রশস্ত।

আরও তথ্যের জন্য, কম্পোজযোগ্য প্রিভিউ সহ আপনার UI এর পূর্বরূপ দেখুন।

এমুলেটর

অ্যান্ড্রয়েড স্টুডিও বিভিন্ন লেআউট মাপের পরীক্ষা করার জন্য বিভিন্ন ধরনের এমুলেটর অফার করে:

  • আকার পরিবর্তনযোগ্য এমুলেটর: একটি ফোন, ট্যাবলেট বা ভাঁজযোগ্য ডিভাইসকে অনুকরণ করে এবং আপনাকে উড়ে যাওয়ার সময় তাদের মধ্যে স্যুইচ করতে দেয়
  • পিক্সেল ফোল্ড এমুলেটর: পিক্সেল ফোল্ড বড় স্ক্রিনের ফোল্ডেবল ফোনকে অনুকরণ করে
  • পিক্সেল ট্যাবলেট এমুলেটর: পিক্সেল ট্যাবলেট বড় স্ক্রীন ডিভাইস অনুকরণ করে
  • ডেস্কটপ এমুলেটর: ফ্রি-ফর্ম উইন্ডোজিং, মাউস হভার এবং কীবোর্ড শর্টকাটগুলির পরীক্ষা সক্ষম করে

দূরবর্তী ডিভাইস স্ট্রিমিং

Google ডেটা সেন্টারে হোস্ট করা রিমোট অ্যান্ড্রয়েড ডিভাইসের সাথে নিরাপদে সংযোগ করুন এবং সাম্প্রতিক Pixel এবং Samsung ডিভাইসে আপনার অ্যাপ চালান। অ্যাপগুলি ইনস্টল এবং ডিবাগ করুন, ADB কমান্ডগুলি চালান এবং আপনার অ্যাপটি বিভিন্ন বাস্তব ডিভাইসে ভালভাবে কাজ করে তা নিশ্চিত করতে ডিভাইসগুলি ঘোরান এবং ভাঁজ করুন৷

রিমোট ডিভাইস স্ট্রিমিং অ্যান্ড্রয়েড স্টুডিওতে একত্রিত করা হয়েছে। আরও তথ্যের জন্য, Firebase দ্বারা চালিত Android ডিভাইস স্ট্রিমিং দেখুন।

অতিরিক্ত সম্পদ

,

ট্যাবলেট, ফোল্ডেবল, ChromeOS ডিভাইস, কার ডিসপ্লে, এবং টিভি সহ 300 মিলিয়নেরও বেশি Android বড় স্ক্রীন ডিভাইসগুলি আজ ব্যবহার করা হচ্ছে, আরও কিছু ক্রমাগত আসছে৷ বড় স্ক্রীন ডিভাইসের ক্রমবর্ধমান সংখ্যা এবং বৈচিত্র্যের উপর একটি সর্বোত্তম ব্যবহারকারীর অভিজ্ঞতা প্রদান করতে - সেইসাথে স্ট্যান্ডার্ড ফোনে - অভিযোজিত অ্যাপ তৈরি করুন

অভিযোজিত অ্যাপ্লিকেশন কি?

অভিযোজিত অ্যাপগুলি অ্যাপ প্রদর্শনের পরিবর্তনের উপর ভিত্তি করে লেআউট পরিবর্তন করে, প্রাথমিকভাবে অ্যাপ উইন্ডোর আকার। কিন্তু অভিযোজিত অ্যাপগুলি ভাঁজ করা যায় এমন ডিভাইসের ভঙ্গি, যেমন ট্যাবলেটপ বা বইয়ের ভঙ্গি এবং স্ক্রীনের ঘনত্ব এবং ফন্টের আকারের পরিবর্তনগুলিকে মিটমাট করে।

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

চিত্র 1. অভিযোজিত অ্যাপ্লিকেশন বিভিন্ন উইন্ডো আকারের জন্য বিন্যাস অপ্টিমাইজ করে।

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

অভিযোজিত অ্যাপ্লিকেশনগুলি দেখতে দুর্দান্ত দেখায় এবং যে কোনও কনফিগারেশনে যে কোনও ডিভাইসে ভাল কাজ করে।

কেন অভিযোজিত UIs নির্মাণ?

ব্যবহারকারীরা আশা করে যে আপনার অ্যাপটি তাদের সমস্ত ডিভাইসে ত্রুটিহীনভাবে কাজ করবে এবং বড় স্ক্রিনে উন্নত ক্ষমতা প্রদান করবে। একটি বর্ধিত অ্যাপ অভিজ্ঞতা এবং বর্ধিত উত্পাদনশীলতার জন্য ব্যবহারকারীরা মাল্টি-উইন্ডো মোডে মাল্টিটাস্ক করে।

স্ট্যান্ডার্ড ফোনে সিঙ্গেল-টাস্কিং-এর মধ্যে সীমাবদ্ধ অ্যাপগুলি বিভিন্ন সম্ভাবনার একটি বর্ধিত ব্যবহারকারী বেস মিস করে।

গুগল প্লে

Google Play ট্যাবলেট- এবং ভাঁজযোগ্য-নির্দিষ্ট অ্যাপ সংগ্রহ এবং সুপারিশ প্রদান করে, যা ব্যবহারকারীদের উচ্চ-মানের অ্যাপ আবিষ্কার করতে সক্ষম করে।

প্লে র‍্যাঙ্ক অ্যাপ এবং গেমগুলি অপ্টিমাইজ করা অ্যাপগুলির চেয়ে বড় স্ক্রিনের জন্য অপ্টিমাইজ করা হয়েছে৷ র‍্যাঙ্কিং বড় স্ক্রিনের অ্যাপের গুণমানের নির্দেশিকাগুলির উপর ভিত্তি করে। উচ্চতর র‌্যাঙ্কিং মাল্টি-ডিভাইস ব্যবহারকারীদের তাদের ফোনে বড় স্ক্রীন-নির্দিষ্ট রেটিং এবং পর্যালোচনা দেখতে সক্ষম করে আবিষ্কারযোগ্যতা বাড়ায়।

যে অ্যাপগুলি প্লে স্টোরের বড় স্ক্রিনের মানের মান পূরণ করে না সেগুলি অ্যাপের বিবরণ পৃষ্ঠায় একটি সতর্কতা প্রদর্শন করে। সতর্কতা ব্যবহারকারীদের পরামর্শ দেয় যে অ্যাপটি তাদের বড় স্ক্রিনের ডিভাইসে ভাল পারফর্ম নাও করতে পারে।

চিত্র 2. অ্যাপের বিবরণ পৃষ্ঠায় প্রযুক্তিগত মানের সতর্কতা।

Google Play-এ আবিষ্কারযোগ্যতা বাড়াতে অভিযোজিত অ্যাপ তৈরি করুন এবং আপনার অ্যাপ ডাউনলোড করতে পারে এমন ডিভাইসের সংখ্যা সর্বাধিক করুন।

কিভাবে শুরু করবেন

পরিকল্পনা থেকে মোতায়েন পর্যন্ত অ্যাপ বিকাশের সমস্ত পর্যায়ে অভিযোজিত নকশা সম্পর্কে চিন্তা করুন। অভিযোজিত ডিজাইন সম্পর্কে গ্রাফিক ডিজাইনারদের অবহিত করুন। আপনার অ্যাপটিকে অভিযোজিত করার জন্য ডিজাইন করুন এবং আপনি এমন একটি অ্যাপ তৈরি করবেন যা পরিচালনাযোগ্য, এক্সটেনসিবল এবং ভবিষ্যতের ফর্ম ফ্যাক্টর এবং উইন্ডো মোডের জন্য প্রস্তুত।

একটি অভিযোজিত অ্যাপ্লিকেশন তৈরি করতে যা সমস্ত প্রদর্শন আকার এবং কনফিগারেশন সমর্থন করে, নিম্নলিখিতগুলি করুন:

  • লেআউট সিদ্ধান্ত নিতে উইন্ডো আকার ক্লাস ব্যবহার করুন
  • কম্পোজ ম্যাটেরিয়াল 3 অ্যাডাপটিভ লাইব্রেরি দিয়ে তৈরি করুন
  • স্পর্শের বাইরে ইনপুট সমর্থন
  • সমস্ত ধরণের ডিভাইসে পরীক্ষা করুন

উইন্ডো সাইজ ক্লাস

অ্যাপ উইন্ডোর মাত্রা বিভিন্ন ডিভাইসে ভিন্ন হতে পারে—অথবা ফোল্ডেবলের ক্ষেত্রে একই ডিভাইসে—এমনকি অ্যাপটি পূর্ণ স্ক্রীনে থাকলেও। বিভিন্ন ডিভাইস ওরিয়েন্টেশন বিভিন্ন আকৃতির অনুপাত তৈরি করে। মাল্টি-উইন্ডো মোডে, অ্যাপ উইন্ডোর আকার, আকৃতির অনুপাত, এবং অভিযোজন ডিভাইসের পর্দার থেকে আলাদা হতে পারে।

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

উইন্ডো আকারের ক্লাসগুলি উইন্ডোর প্রস্থ বা উচ্চতার উপর ভিত্তি করে অ্যাপ উইন্ডোগুলিকে কম্প্যাক্ট , মাঝারি বা প্রসারিত হিসাবে শ্রেণীবদ্ধ করে।

কমপ্যাক্ট, মাঝারি, এবং প্রসারিত প্রস্থ উইন্ডো আকারের ক্লাসের চিত্র।
চিত্র 3. প্রদর্শনের প্রস্থের উপর ভিত্তি করে উইন্ডো আকারের ক্লাস।

Compose Material 3 Adaptive লাইব্রেরির currentWindowAdaptiveInfo() শীর্ষ-স্তরের ফাংশন ব্যবহার করে আপনার অ্যাপের WindowSizeClass গণনা করুন। ফাংশনটি WindowAdaptiveInfo এর একটি উদাহরণ প্রদান করে, যাতে windowSizeClass রয়েছে। যখনই উইন্ডোর আকার শ্রেণী পরিবর্তিত হয় তখন আপনার অ্যাপ আপডেট পায়:

val windowSizeClass = currentWindowAdaptiveInfo().windowSizeClass

বিষয়বস্তুর ফলক

একটি কার্যকলাপের বিন্যাস কখনও কখনও একটি পর্দা হিসাবে উল্লেখ করা হয়. উদাহরণস্বরূপ, আপনার অ্যাপে একটি হোম স্ক্রীন, একটি তালিকা স্ক্রীন এবং একটি আইটেমের বিশদ স্ক্রীন থাকতে পারে। পরিভাষাটি বোঝায় যে প্রতিটি কার্যকলাপ ডিভাইসের স্ক্রীনকে পূর্ণ করে।

যাইহোক, প্রসারিত প্রস্থ উইন্ডো সাইজ ক্লাস সমর্থন করার জন্য যথেষ্ট বড় ডিভাইস স্ক্রীনে, একাধিক অ্যাক্টিভিটি স্ক্রীন একই সময়ে অনস্ক্রিন হতে পারে। প্যান হল স্বতন্ত্র ক্রিয়াকলাপের বিষয়বস্তু প্রদর্শনের জন্য আরও সুনির্দিষ্ট শব্দ।

উইন্ডোর আকারের ক্লাসগুলি আপনাকে ম্যাটেরিয়াল ডিজাইনে নির্দিষ্ট করা মাল্টি-পেন লেআউটে কতগুলি সামগ্রী প্যান দেখাতে হবে তা নির্ধারণ করতে সক্ষম করে৷

ডিভাইস স্ক্রিনগুলি প্যানে বিভক্ত: কমপ্যাক্ট এবং মাঝারি উইন্ডো আকারের ক্লাসে একটি ফলক, প্রসারিত উইন্ডো আকারের শ্রেণিতে দুটি প্যান।
চিত্র 4. উইন্ডো সাইজ ক্লাস প্রতি বিষয়বস্তু প্যানের সংখ্যা।

প্যানগুলি নৌযানযোগ্য। কমপ্যাক্ট এবং মাঝারি উইন্ডো আকারের ক্লাসগুলিতে, অ্যাপগুলি একটি একক ফলক প্রদর্শন করে; এবং তাই, যেকোনো গন্তব্যে নেভিগেশন একটি ফলক প্রদর্শন করে।

প্রসারিত উইন্ডো সাইজ ক্লাসে, অ্যাপগুলি একাধিক প্যানে সম্পর্কিত বিষয়বস্তু প্রদর্শন করতে পারে, যেমন একটি তালিকা-বিশদ বিন্যাস। উভয় প্যানে নেভিগেশন দুই-প্যান লেআউট প্রদর্শন করে। যদি উইন্ডোর আকার কমপ্যাক্ট বা মাঝারিতে পরিবর্তিত হয়, অভিযোজিত অ্যাপগুলি শুধুমাত্র একটি ফলক দেখায়, নেভিগেশন গন্তব্য, হয় তালিকা বা বিশদ।

চিত্র 5. নেভিগেশন লক্ষ্য হিসাবে তালিকা ফলক সহ তালিকা-বিশদ বিন্যাস।
চিত্র 6. নেভিগেশন লক্ষ্য হিসাবে বিশদ ফলক সহ তালিকা-বিশদ বিন্যাস।

রচনা উপাদান 3 অভিযোজিত

জেটপ্যাক কম্পোজ হল একাধিক লেআউট ফাইলের নকল এবং রক্ষণাবেক্ষণের বোঝা ছাড়াই অভিযোজিত অ্যাপ তৈরির জন্য আধুনিক, ঘোষণামূলক পদ্ধতি।

কম্পোজ ম্যাটেরিয়াল 3 অ্যাডাপটিভ লাইব্রেরিতে কম্পোজেবল রয়েছে যা উইন্ডো সাইজ ক্লাস, নেভিগেশন কম্পোনেন্ট, মাল্টি-পেন লেআউট এবং ফোল্ডেবল ভঙ্গি এবং কব্জা অবস্থান পরিচালনা করে, উদাহরণস্বরূপ:

  • NavigationSuiteScaffold : অ্যাপ উইন্ডোর আকার ক্লাস এবং ডিভাইসের ভঙ্গির উপর নির্ভর করে স্বয়ংক্রিয়ভাবে নেভিগেশন বার এবং নেভিগেশন রেলের মধ্যে স্যুইচ করে।

  • ListDetailPaneScaffold : তালিকা-বিশদ ক্যানোনিকাল লেআউট প্রয়োগ করে।

    অ্যাপ্লিকেশান উইন্ডো আকারে লেআউট মানিয়ে নেয়। প্রসারিত উইন্ডো সাইজ ক্লাসে পাশাপাশি প্যানেলে একটি তালিকা এবং একটি তালিকা আইটেমের বিশদ বিবরণ উপস্থাপন করে, তবে শুধুমাত্র তালিকা বা কম্প্যাক্ট এবং মাঝারি উইন্ডো আকারের ক্লাসের বিবরণ।

  • SupportingPaneScaffold : সমর্থনকারী প্যান ক্যানোনিকাল লেআউট প্রয়োগ করে।

    প্রসারিত উইন্ডো সাইজ ক্লাসে প্রধান বিষয়বস্তু ফলক এবং একটি সমর্থনকারী ফলক উপস্থাপন করে, তবে কমপ্যাক্ট এবং মাঝারি উইন্ডো আকারের ক্লাসে শুধুমাত্র প্রধান সামগ্রী ফলক।

কম্পোজ ম্যাটেরিয়াল 3 অ্যাডাপ্টিভ লাইব্রেরি হল অভিযোজিত অ্যাপ তৈরির জন্য নির্ভরতা থাকা আবশ্যক৷

কনফিগারেশন এবং ধারাবাহিকতা

অভিযোজিত অ্যাপগুলি কনফিগারেশন পরিবর্তনের সময় ধারাবাহিকতা বজায় রাখে।

একটি কনফিগারেশন পরিবর্তন ঘটে যখন অ্যাপ উইন্ডোর আকার পরিবর্তন করা হয়, একটি ভাঁজযোগ্য ভঙ্গি পরিবর্তন হয়, বা পর্দার ঘনত্ব বা ফন্ট পরিবর্তন হয়।

ডিফল্টরূপে, কনফিগারেশন পরিবর্তনগুলি অ্যাপের কার্যকলাপকে পুনরায় তৈরি করে এবং সমস্ত কার্যকলাপের অবস্থা হারিয়ে যায়। ধারাবাহিকতা বজায় রাখতে, অভিযোজিত অ্যাপগুলি কার্যকলাপের onSaveInstanceState() পদ্ধতিতে বা একটি ViewModel এ অবস্থা সংরক্ষণ করে।

ভঙ্গি

অভিযোজিত অ্যাপ্লিকেশনগুলি ভাঁজযোগ্য ডিভাইসগুলির ভঙ্গিতে পরিবর্তনের প্রতিক্রিয়া জানায়। ভঙ্গিতে টেবিলটপ এবং বইয়ের ভঙ্গি অন্তর্ভুক্ত।

চিত্র 7. টেবিলটপ ভঙ্গিতে ভাঁজযোগ্য ডিভাইস।

Jetpack WindowManager-এ WindowInfoTracker ইন্টারফেস আপনাকে ডিভাইসের জন্য DisplayFeature অবজেক্টের একটি তালিকা পেতে সক্ষম করে। ডিসপ্লে বৈশিষ্ট্যগুলির মধ্যে রয়েছে FoldingFeature.State , যা নির্দেশ করে যে ডিভাইসটি সম্পূর্ণ বা অর্ধেক খোলা।

Compose Material 3 Adaptive লাইব্রেরি currentWindowAdaptiveInfo() শীর্ষ-স্তরের ফাংশন প্রদান করে, যা windowPosture ধারণকারী WindowAdaptiveInfo এর একটি উদাহরণ প্রদান করে।

স্পর্শের বাইরে ইনপুট

ব্যবহারকারীরা প্রায়ই বাহ্যিক কীবোর্ড, ট্র্যাকপ্যাড, ইঁদুর এবং স্টাইলাসগুলিকে বড় স্ক্রীনের ডিভাইসগুলিতে সংযুক্ত করে। পেরিফেরিয়ালগুলি ব্যবহারকারীর উত্পাদনশীলতা, ইনপুট নির্ভুলতা, ব্যক্তিগত অভিব্যক্তি এবং অ্যাক্সেসযোগ্যতা বাড়ায়। বেশিরভাগ ChromeOS ডিভাইসে কীবোর্ড এবং ট্র্যাকপ্যাড অন্তর্নির্মিত থাকে।

অভিযোজিত অ্যাপ্লিকেশানগুলি বাহ্যিক ইনপুট ডিভাইসগুলিকে সমর্থন করে, তবে আপনার জন্য বেশিরভাগ কাজ Android ফ্রেমওয়ার্ক দ্বারা করা হয়:

  • জেটপ্যাক রচনা 1.7 এবং উচ্চতর: কীবোর্ড ট্যাব নেভিগেশন এবং মাউস বা ট্র্যাকপ্যাড ক্লিক, নির্বাচন এবং স্ক্রোল ডিফল্টরূপে সমর্থিত।

  • Jetpack androidx.compose.material3 লাইব্রেরি: ব্যবহারকারীদের একটি স্টাইলাস ব্যবহার করে যেকোনো TextField উপাদানে লিখতে সক্ষম করে।

  • কীবোর্ড শর্টকাট হেল্পার : অ্যান্ড্রয়েড প্ল্যাটফর্ম এবং অ্যাপ কীবোর্ড শর্টকাট ব্যবহারকারীদের দ্বারা আবিষ্কারযোগ্য করে তোলে। onProvideKeyboardShortcuts() উইন্ডো কলব্যাককে ওভাররাইড করে কীবোর্ড শর্টকাট হেল্পারে আপনার অ্যাপের কীবোর্ড শর্টকাটগুলি প্রকাশ করুন৷

সমস্ত আকারের ফর্ম ফ্যাক্টরগুলিকে সম্পূর্ণরূপে সমর্থন করতে, অভিযোজিত অ্যাপগুলি সমস্ত ধরণের ইনপুট সমর্থন করে৷

অভিযোজিত অ্যাপগুলি কীভাবে পরীক্ষা করবেন

বিভিন্ন স্ক্রীন এবং উইন্ডোর আকার এবং বিভিন্ন ডিভাইস কনফিগারেশন পরীক্ষা করুন । আপনার অ্যাপের লেআউটগুলি পরীক্ষা করতে হোস্ট-সাইড স্ক্রিনশট এবং কম্পোজ প্রিভিউ ব্যবহার করুন। অ্যান্ড্রয়েড স্টুডিও এমুলেটর এবং গুগল ডেটা সেন্টারে হোস্ট করা রিমোট অ্যান্ড্রয়েড ডিভাইসে আপনার অ্যাপ চালান।

বড় স্ক্রিনের অ্যাপের গুণমানের নির্দেশিকা

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

একাধিক কনফিগারেশন

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

DeviceConfigurationOverride.then() এক্সটেনশন ফাংশন দিয়ে, আপনি একই সময়ে একাধিক কনফিগারেশন প্যারামিটার পরীক্ষা করতে পারেন, যেমন ফন্ট সাইজ, লোকেল, থিম এবং লেআউট সাইজ।

হোস্ট-সাইড স্ক্রিনশট

হোস্ট-সাইড স্ক্রিনশট পরীক্ষা হল আপনার অ্যাপ লেআউটের ভিজ্যুয়াল চেহারা যাচাই করার একটি দ্রুত এবং মাপযোগ্য উপায়। বিভিন্ন ডিসপ্লে মাপের জন্য আপনার UI পরীক্ষা করতে হোস্ট-সাইড স্ক্রিনশট ব্যবহার করুন।

আরও তথ্যের জন্য, কম্পোজ প্রিভিউ স্ক্রিনশট টেস্টিং দেখুন।

পূর্বরূপ রচনা করুন

কম্পোজ প্রিভিউ আপনাকে অ্যান্ড্রয়েড স্টুডিওর ডিজাইন ভিউতে আপনার অ্যাপের UI চেক করতে সক্ষম করে। প্রিভিউগুলি আপনাকে বিভিন্ন কনফিগারেশনে সংমিশ্রণযোগ্য সামগ্রী দেখতে দেওয়ার জন্য @PreviewScreenSizes , @PreviewFontScale এবং @PreviewLightDark এর মতো টীকা ব্যবহার করে। এমনকি আপনি পূর্বরূপের সাথে ইন্টারঅ্যাক্ট করতে পারেন।

অ্যান্ড্রয়েড স্টুডিও প্রিভিউতে সাধারণ ব্যবহারযোগ্যতার সমস্যাগুলিও হাইলাইট করে, যেমন বোতাম বা টেক্সট ফিল্ড যা খুব প্রশস্ত।

আরও তথ্যের জন্য, কম্পোজেবল প্রিভিউ সহ আপনার UI এর পূর্বরূপ দেখুন।

এমুলেটর

অ্যান্ড্রয়েড স্টুডিও বিভিন্ন লেআউট মাপের পরীক্ষা করার জন্য বিভিন্ন ধরনের এমুলেটর অফার করে:

  • আকার পরিবর্তনযোগ্য এমুলেটর: একটি ফোন, ট্যাবলেট বা ভাঁজযোগ্য ডিভাইসকে অনুকরণ করে এবং আপনাকে উড়ে যাওয়ার সময় তাদের মধ্যে স্যুইচ করতে দেয়
  • পিক্সেল ফোল্ড এমুলেটর: পিক্সেল ফোল্ড বড় স্ক্রিনের ফোল্ডেবল ফোনকে অনুকরণ করে
  • পিক্সেল ট্যাবলেট এমুলেটর: পিক্সেল ট্যাবলেট বড় স্ক্রীন ডিভাইস অনুকরণ করে
  • ডেস্কটপ এমুলেটর: ফ্রি-ফর্ম উইন্ডোিং, মাউস হভার এবং কীবোর্ড শর্টকাটগুলির পরীক্ষা সক্ষম করে

দূরবর্তী ডিভাইস স্ট্রিমিং

Google ডেটা সেন্টারে হোস্ট করা রিমোট অ্যান্ড্রয়েড ডিভাইসের সাথে নিরাপদে সংযোগ করুন এবং সাম্প্রতিক Pixel এবং Samsung ডিভাইসে আপনার অ্যাপ চালান। অ্যাপগুলি ইনস্টল এবং ডিবাগ করুন, ADB কমান্ডগুলি চালান এবং আপনার অ্যাপটি বিভিন্ন বাস্তব ডিভাইসে ভালভাবে কাজ করে তা নিশ্চিত করতে ডিভাইসগুলি ঘোরান এবং ভাঁজ করুন৷

রিমোট ডিভাইস স্ট্রিমিং অ্যান্ড্রয়েড স্টুডিওতে একত্রিত করা হয়েছে। আরও তথ্যের জন্য, Firebase দ্বারা চালিত Android ডিভাইস স্ট্রিমিং দেখুন।

অতিরিক্ত সম্পদ

,

ট্যাবলেট, ফোল্ডেবল, ChromeOS ডিভাইস, কার ডিসপ্লে, এবং টিভি সহ 300 মিলিয়নেরও বেশি Android বড় স্ক্রীন ডিভাইসগুলি আজ ব্যবহার করা হচ্ছে, আরও কিছু ক্রমাগত আসছে৷ বড় স্ক্রীন ডিভাইসের ক্রমবর্ধমান সংখ্যা এবং বৈচিত্র্যের উপর একটি সর্বোত্তম ব্যবহারকারীর অভিজ্ঞতা প্রদান করতে - সেইসাথে স্ট্যান্ডার্ড ফোনে - অভিযোজিত অ্যাপ তৈরি করুন

অভিযোজিত অ্যাপ্লিকেশন কি?

অভিযোজিত অ্যাপগুলি অ্যাপ প্রদর্শনের পরিবর্তনের উপর ভিত্তি করে লেআউট পরিবর্তন করে, প্রাথমিকভাবে অ্যাপ উইন্ডোর আকার। কিন্তু অভিযোজিত অ্যাপগুলি ভাঁজ করা যায় এমন ডিভাইসের ভঙ্গি, যেমন ট্যাবলেটপ বা বইয়ের ভঙ্গি এবং স্ক্রীনের ঘনত্ব এবং ফন্টের আকারের পরিবর্তনগুলিকে মিটমাট করে।

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

চিত্র 1. অভিযোজিত অ্যাপ্লিকেশন বিভিন্ন উইন্ডো আকারের জন্য বিন্যাস অপ্টিমাইজ করে।

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

অভিযোজিত অ্যাপ্লিকেশনগুলি দেখতে দুর্দান্ত দেখায় এবং যে কোনও কনফিগারেশনে যে কোনও ডিভাইসে ভাল কাজ করে।

কেন অভিযোজিত UIs নির্মাণ?

ব্যবহারকারীরা আশা করে যে আপনার অ্যাপটি তাদের সমস্ত ডিভাইসে ত্রুটিহীনভাবে কাজ করবে এবং বড় স্ক্রিনে উন্নত ক্ষমতা প্রদান করবে। একটি বর্ধিত অ্যাপ অভিজ্ঞতা এবং বর্ধিত উত্পাদনশীলতার জন্য ব্যবহারকারীরা মাল্টি-উইন্ডো মোডে মাল্টিটাস্ক করে।

স্ট্যান্ডার্ড ফোনে সিঙ্গেল-টাস্কিং-এর মধ্যে সীমাবদ্ধ অ্যাপগুলি বিভিন্ন সম্ভাবনার একটি বর্ধিত ব্যবহারকারী বেস মিস করে।

গুগল প্লে

Google Play ট্যাবলেট- এবং ভাঁজযোগ্য-নির্দিষ্ট অ্যাপ সংগ্রহ এবং সুপারিশ প্রদান করে, যা ব্যবহারকারীদের উচ্চ-মানের অ্যাপ আবিষ্কার করতে সক্ষম করে।

প্লে র‍্যাঙ্ক অ্যাপ এবং গেমগুলি অপ্টিমাইজ করা অ্যাপগুলির চেয়ে বড় স্ক্রিনের জন্য অপ্টিমাইজ করা হয়েছে৷ র‍্যাঙ্কিং বড় স্ক্রিনের অ্যাপের গুণমানের নির্দেশিকাগুলির উপর ভিত্তি করে। উচ্চতর র‌্যাঙ্কিং মাল্টি-ডিভাইস ব্যবহারকারীদের তাদের ফোনে বড় স্ক্রীন-নির্দিষ্ট রেটিং এবং পর্যালোচনা দেখতে সক্ষম করে আবিষ্কারযোগ্যতা বাড়ায়।

যে অ্যাপগুলি প্লে স্টোরের বড় স্ক্রিনের মানের মান পূরণ করে না সেগুলি অ্যাপের বিবরণ পৃষ্ঠায় একটি সতর্কতা প্রদর্শন করে। সতর্কতা ব্যবহারকারীদের পরামর্শ দেয় যে অ্যাপটি তাদের বড় স্ক্রিনের ডিভাইসে ভাল পারফর্ম নাও করতে পারে।

চিত্র 2. অ্যাপের বিবরণ পৃষ্ঠায় প্রযুক্তিগত মানের সতর্কতা।

Google Play-এ আবিষ্কারযোগ্যতা বাড়াতে অভিযোজিত অ্যাপ তৈরি করুন এবং আপনার অ্যাপ ডাউনলোড করতে পারে এমন ডিভাইসের সংখ্যা সর্বাধিক করুন।

কিভাবে শুরু করবেন

পরিকল্পনা থেকে মোতায়েন পর্যন্ত অ্যাপ বিকাশের সমস্ত পর্যায়ে অভিযোজিত নকশা সম্পর্কে চিন্তা করুন। অভিযোজিত ডিজাইন সম্পর্কে গ্রাফিক ডিজাইনারদের অবহিত করুন। আপনার অ্যাপটিকে অভিযোজিত করার জন্য ডিজাইন করুন এবং আপনি এমন একটি অ্যাপ তৈরি করবেন যা পরিচালনাযোগ্য, এক্সটেনসিবল এবং ভবিষ্যতের ফর্ম ফ্যাক্টর এবং উইন্ডো মোডের জন্য প্রস্তুত।

একটি অভিযোজিত অ্যাপ্লিকেশন তৈরি করতে যা সমস্ত প্রদর্শন আকার এবং কনফিগারেশন সমর্থন করে, নিম্নলিখিতগুলি করুন:

  • লেআউট সিদ্ধান্ত নিতে উইন্ডো আকার ক্লাস ব্যবহার করুন
  • কম্পোজ ম্যাটেরিয়াল 3 অ্যাডাপটিভ লাইব্রেরি দিয়ে তৈরি করুন
  • স্পর্শের বাইরে ইনপুট সমর্থন
  • সমস্ত ধরণের ডিভাইসে পরীক্ষা করুন

উইন্ডো সাইজ ক্লাস

অ্যাপ উইন্ডোর মাত্রা বিভিন্ন ডিভাইসে ভিন্ন হতে পারে—অথবা ফোল্ডেবলের ক্ষেত্রে একই ডিভাইসে—এমনকি অ্যাপটি পূর্ণ স্ক্রীনে থাকলেও। বিভিন্ন ডিভাইস ওরিয়েন্টেশন বিভিন্ন আকৃতির অনুপাত তৈরি করে। মাল্টি-উইন্ডো মোডে, অ্যাপ উইন্ডোর আকার, আকৃতির অনুপাত, এবং অভিযোজন ডিভাইসের পর্দার থেকে আলাদা হতে পারে।

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

উইন্ডো আকারের ক্লাসগুলি উইন্ডোর প্রস্থ বা উচ্চতার উপর ভিত্তি করে অ্যাপ উইন্ডোগুলিকে কম্প্যাক্ট , মাঝারি বা প্রসারিত হিসাবে শ্রেণীবদ্ধ করে।

কমপ্যাক্ট, মাঝারি, এবং প্রসারিত প্রস্থ উইন্ডো আকারের ক্লাসের চিত্র।
চিত্র 3. প্রদর্শনের প্রস্থের উপর ভিত্তি করে উইন্ডো আকারের ক্লাস।

Compose Material 3 Adaptive লাইব্রেরির currentWindowAdaptiveInfo() শীর্ষ-স্তরের ফাংশন ব্যবহার করে আপনার অ্যাপের WindowSizeClass গণনা করুন। ফাংশনটি WindowAdaptiveInfo এর একটি উদাহরণ প্রদান করে, যাতে windowSizeClass রয়েছে। যখনই উইন্ডোর আকার শ্রেণী পরিবর্তিত হয় তখন আপনার অ্যাপ আপডেট পায়:

val windowSizeClass = currentWindowAdaptiveInfo().windowSizeClass

বিষয়বস্তুর ফলক

একটি কার্যকলাপের বিন্যাস কখনও কখনও একটি পর্দা হিসাবে উল্লেখ করা হয়. উদাহরণস্বরূপ, আপনার অ্যাপে একটি হোম স্ক্রীন, একটি তালিকা স্ক্রীন এবং একটি আইটেমের বিশদ স্ক্রীন থাকতে পারে। পরিভাষাটি বোঝায় যে প্রতিটি কার্যকলাপ ডিভাইসের স্ক্রীনকে পূর্ণ করে।

যাইহোক, প্রসারিত প্রস্থ উইন্ডো সাইজ ক্লাস সমর্থন করার জন্য যথেষ্ট বড় ডিভাইস স্ক্রীনে, একাধিক অ্যাক্টিভিটি স্ক্রীন একই সময়ে অনস্ক্রিন হতে পারে। প্যান হল স্বতন্ত্র ক্রিয়াকলাপের বিষয়বস্তু প্রদর্শনের জন্য আরও সুনির্দিষ্ট শব্দ।

উইন্ডোর আকারের ক্লাসগুলি আপনাকে ম্যাটেরিয়াল ডিজাইনে নির্দিষ্ট করা মাল্টি-পেন লেআউটে কতগুলি সামগ্রী প্যান দেখাতে হবে তা নির্ধারণ করতে সক্ষম করে৷

ডিভাইস স্ক্রিনগুলি প্যানে বিভক্ত: কমপ্যাক্ট এবং মাঝারি উইন্ডো আকারের ক্লাসে একটি ফলক, প্রসারিত উইন্ডো আকারের শ্রেণিতে দুটি প্যান।
চিত্র 4. উইন্ডো আকারের ক্লাস প্রতি বিষয়বস্তুর প্যানের সংখ্যা।

প্যানগুলি নৌযানযোগ্য। কমপ্যাক্ট এবং মাঝারি উইন্ডো আকারের ক্লাসগুলিতে, অ্যাপগুলি একটি একক ফলক প্রদর্শন করে; এবং তাই, যেকোনো গন্তব্যে নেভিগেশন একটি ফলক প্রদর্শন করে।

প্রসারিত উইন্ডো সাইজ ক্লাসে, অ্যাপগুলি একাধিক প্যানে সম্পর্কিত বিষয়বস্তু প্রদর্শন করতে পারে, যেমন একটি তালিকা-বিশদ বিন্যাস। উভয় প্যানে নেভিগেশন দুই-প্যান লেআউট প্রদর্শন করে। যদি উইন্ডোর আকার কমপ্যাক্ট বা মাঝারিতে পরিবর্তিত হয়, অভিযোজিত অ্যাপগুলি শুধুমাত্র একটি ফলক দেখায়, নেভিগেশন গন্তব্য, হয় তালিকা বা বিশদ।

চিত্র 5. নেভিগেশন লক্ষ্য হিসাবে তালিকা ফলক সহ তালিকা-বিশদ বিন্যাস।
চিত্র 6. নেভিগেশন লক্ষ্য হিসাবে বিশদ ফলক সহ তালিকা-বিশদ বিন্যাস।

রচনা উপাদান 3 অভিযোজিত

জেটপ্যাক কম্পোজ হল একাধিক লেআউট ফাইলের নকল এবং রক্ষণাবেক্ষণের বোঝা ছাড়াই অভিযোজিত অ্যাপ তৈরির জন্য আধুনিক, ঘোষণামূলক পদ্ধতি।

কম্পোজ ম্যাটেরিয়াল 3 অ্যাডাপটিভ লাইব্রেরিতে কম্পোজেবল রয়েছে যা উইন্ডো সাইজ ক্লাস, নেভিগেশন কম্পোনেন্ট, মাল্টি-পেন লেআউট এবং ফোল্ডেবল ভঙ্গি এবং কব্জা অবস্থান পরিচালনা করে, উদাহরণস্বরূপ:

  • NavigationSuiteScaffold : অ্যাপ উইন্ডোর আকার ক্লাস এবং ডিভাইসের ভঙ্গির উপর নির্ভর করে স্বয়ংক্রিয়ভাবে নেভিগেশন বার এবং নেভিগেশন রেলের মধ্যে স্যুইচ করে।

  • ListDetailPaneScaffold : তালিকা-বিশদ ক্যানোনিকাল লেআউট প্রয়োগ করে।

    অ্যাপ্লিকেশান উইন্ডো আকারে লেআউট মানিয়ে নেয়। প্রসারিত উইন্ডো সাইজ ক্লাসে পাশাপাশি প্যানেলে একটি তালিকা এবং একটি তালিকা আইটেমের বিশদ বিবরণ উপস্থাপন করে, তবে শুধুমাত্র তালিকা বা কম্প্যাক্ট এবং মাঝারি উইন্ডো আকারের ক্লাসের বিবরণ।

  • SupportingPaneScaffold : সমর্থনকারী প্যান ক্যানোনিকাল লেআউট প্রয়োগ করে।

    প্রসারিত উইন্ডো সাইজ ক্লাসে প্রধান বিষয়বস্তু ফলক এবং একটি সমর্থনকারী ফলক উপস্থাপন করে, তবে কমপ্যাক্ট এবং মাঝারি উইন্ডো আকারের ক্লাসে শুধুমাত্র প্রধান সামগ্রী ফলক।

কম্পোজ ম্যাটেরিয়াল 3 অ্যাডাপ্টিভ লাইব্রেরি হল অভিযোজিত অ্যাপ তৈরির জন্য নির্ভরতা থাকা আবশ্যক৷

কনফিগারেশন এবং ধারাবাহিকতা

অভিযোজিত অ্যাপগুলি কনফিগারেশন পরিবর্তনের সময় ধারাবাহিকতা বজায় রাখে।

একটি কনফিগারেশন পরিবর্তন ঘটে যখন অ্যাপ উইন্ডোর আকার পরিবর্তন করা হয়, একটি ভাঁজযোগ্য ভঙ্গি পরিবর্তন হয়, বা পর্দার ঘনত্ব বা ফন্ট পরিবর্তন হয়।

ডিফল্টরূপে, কনফিগারেশন পরিবর্তনগুলি অ্যাপের কার্যকলাপকে পুনরায় তৈরি করে এবং সমস্ত কার্যকলাপের অবস্থা হারিয়ে যায়। ধারাবাহিকতা বজায় রাখতে, অভিযোজিত অ্যাপগুলি কার্যকলাপের onSaveInstanceState() পদ্ধতিতে বা একটি ViewModel এ অবস্থা সংরক্ষণ করে।

ভঙ্গি

অভিযোজিত অ্যাপ্লিকেশনগুলি ভাঁজযোগ্য ডিভাইসগুলির ভঙ্গিতে পরিবর্তনের প্রতিক্রিয়া জানায়। ভঙ্গিতে টেবিলটপ এবং বইয়ের ভঙ্গি অন্তর্ভুক্ত।

চিত্র 7. টেবিলটপ ভঙ্গিতে ভাঁজযোগ্য ডিভাইস।

জেটপ্যাক উইন্ডো ম্যানেজারে WindowInfoTracker ইন্টারফেস আপনাকে ডিভাইসের জন্য DisplayFeature অবজেক্টগুলির একটি তালিকা পেতে সক্ষম করে। ডিসপ্লে বৈশিষ্ট্যগুলির মধ্যে রয়েছে FoldingFeature.State , যা ডিভাইসটি পুরোপুরি বা অর্ধেক খোলা আছে কিনা তা নির্দেশ করে।

কমপোজ মেটেরিয়াল 3 অ্যাডাপটিভ লাইব্রেরি currentWindowAdaptiveInfo() শীর্ষ স্তরের ফাংশন সরবরাহ করে, যা WindowAdaptiveInfo windowPosture একটি উদাহরণ দেয়।

স্পর্শের বাইরে ইনপুট

ব্যবহারকারীরা প্রায়শই বহিরাগত কীবোর্ড, ট্র্যাকপ্যাড, ইঁদুর এবং স্টাইলাসকে বড় স্ক্রিন ডিভাইসে সংযুক্ত করে। পেরিফেরিয়ালগুলি ব্যবহারকারীর উত্পাদনশীলতা, ইনপুট নির্ভুলতা, ব্যক্তিগত অভিব্যক্তি এবং অ্যাক্সেসযোগ্যতা বাড়ায়। বেশিরভাগ ক্রোমিওস ডিভাইসগুলি কীবোর্ড এবং ট্র্যাকপ্যাডগুলি অন্তর্নির্মিত সহ আসে।

অভিযোজিত অ্যাপ্লিকেশনগুলি বাহ্যিক ইনপুট ডিভাইসগুলিকে সমর্থন করে তবে অ্যান্ড্রয়েড ফ্রেমওয়ার্ক দ্বারা আপনার জন্য বেশিরভাগ কাজ করা হয়:

  • জেটপ্যাক রচনা 1.7 এবং উচ্চতর: কীবোর্ড ট্যাব নেভিগেশন এবং মাউস বা ট্র্যাকপ্যাড ক্লিক করুন, নির্বাচন করুন এবং স্ক্রোল ডিফল্টরূপে সমর্থিত।

  • জেটপ্যাক androidx.compose.material3 3 লাইব্রেরি: ব্যবহারকারীদের স্টাইলাস ব্যবহার করে যে কোনও TextField উপাদানটিতে লিখতে সক্ষম করে।

  • কীবোর্ড শর্টকাটস হেল্পার : অ্যান্ড্রয়েড প্ল্যাটফর্ম এবং অ্যাপ্লিকেশন কীবোর্ড শর্টকাটগুলি ব্যবহারকারীদের দ্বারা আবিষ্কারযোগ্য করে তোলে। onProvideKeyboardShortcuts() উইন্ডো কলব্যাককে ওভাররাইড করে কীবোর্ড শর্টকাটস হেল্পারে আপনার অ্যাপ্লিকেশনটির কীবোর্ড শর্টকাটগুলি প্রকাশ করুন।

সমস্ত আকারের ফর্ম ফ্যাক্টরগুলি সম্পূর্ণরূপে সমর্থন করার জন্য, অভিযোজিত অ্যাপ্লিকেশনগুলি সমস্ত ধরণের ইনপুট সমর্থন করে।

অভিযোজিত অ্যাপ্লিকেশনগুলি কীভাবে পরীক্ষা করবেন

বিভিন্ন স্ক্রিন এবং উইন্ডো আকার এবং বিভিন্ন ডিভাইস কনফিগারেশন পরীক্ষা করুন । আপনার অ্যাপ্লিকেশন লেআউটগুলি পরীক্ষা করতে হোস্ট -পাশের স্ক্রিনশটগুলি ব্যবহার করুন এবং প্রাকদর্শন রচনা করুন। গুগল ডেটা সেন্টারে হোস্ট করা অ্যান্ড্রয়েড স্টুডিও এমুলেটর এবং রিমোট অ্যান্ড্রয়েড ডিভাইসে আপনার অ্যাপটি চালান।

বড় স্ক্রিন অ্যাপ মানের নির্দেশিকা

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

একাধিক কনফিগারেশন

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

DeviceConfigurationOverride.then() এক্সটেনশন ফাংশন, আপনি একাধিক কনফিগারেশন পরামিতি যেমন ফন্টের আকার, লোকেল, থিম এবং লেআউট আকার একই সময়ে পরীক্ষা করতে পারেন।

হোস্ট-সাইড স্ক্রিনশট

হোস্ট-সাইড স্ক্রিনশট পরীক্ষাগুলি আপনার অ্যাপ্লিকেশন লেআউটগুলির ভিজ্যুয়াল উপস্থিতি যাচাই করার একটি দ্রুত এবং স্কেলযোগ্য উপায়। বিভিন্ন ডিসপ্লে আকারের জন্য আপনার ইউআই পরীক্ষা করতে হোস্ট-সাইড স্ক্রিনশটগুলি ব্যবহার করুন।

আরও তথ্যের জন্য, রচনা পূর্বরূপ স্ক্রিনশট টেস্টিং দেখুন।

পূর্বরূপ রচনা

প্রাকদর্শন রচনা আপনাকে অ্যান্ড্রয়েড স্টুডিওর ডিজাইন ভিউতে আপনার অ্যাপ্লিকেশনটির ইউআই পরীক্ষা করতে সক্ষম করে। পূর্বরূপগুলি আপনাকে বিভিন্ন কনফিগারেশনে কমপোজেবল সামগ্রী দেখতে দিতে @PreviewScreenSizes , @PreviewFontScale এবং @PreviewLightDark এর মতো টীকাগুলি ব্যবহার করে। আপনি এমনকি পূর্বরূপগুলির সাথে যোগাযোগ করতে পারেন।

অ্যান্ড্রয়েড স্টুডিও পূর্বরূপগুলিতে সাধারণ ব্যবহারযোগ্যতার সমস্যাগুলিও হাইলাইট করে যেমন বোতাম বা পাঠ্য ক্ষেত্রগুলি যা খুব প্রশস্ত।

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

এমুলেটর

অ্যান্ড্রয়েড স্টুডিও বিভিন্ন লেআউট আকার পরীক্ষা করার জন্য বিভিন্ন এমুলেটর সরবরাহ করে:

  • পুনর্নির্মাণযোগ্য এমুলেটর: একটি ফোন, ট্যাবলেট বা ভাঁজযোগ্য ডিভাইস অনুকরণ করে এবং আপনাকে ফ্লাইতে তাদের মধ্যে স্যুইচ করতে দেয়
  • পিক্সেল ভাঁজ এমুলেটর: পিক্সেল ভাঁজ বড় স্ক্রিন ফোল্ডেবল ফোনটি অনুকরণ করে
  • পিক্সেল ট্যাবলেট এমুলেটর: পিক্সেল ট্যাবলেট বড় স্ক্রিন ডিভাইসটি অনুকরণ করে
  • ডেস্কটপ এমুলেটর: ফ্রি-ফর্ম উইন্ডোইং, মাউস হোভার এবং কীবোর্ড শর্টকাটগুলির পরীক্ষা সক্ষম করে

দূরবর্তী ডিভাইস স্ট্রিমিং

সুরক্ষিতভাবে গুগল ডেটা সেন্টারে হোস্ট করা রিমোট অ্যান্ড্রয়েড ডিভাইসের সাথে যোগাযোগ করুন এবং সর্বশেষতম পিক্সেল এবং স্যামসাং ডিভাইসে আপনার অ্যাপ্লিকেশনটি চালান। অ্যাপ্লিকেশনগুলি ইনস্টল করুন এবং ডিবাগ করুন, এডিবি কমান্ডগুলি চালান এবং আপনার অ্যাপ্লিকেশনটি বিভিন্ন রিয়েল ডিভাইসে ভালভাবে কাজ করে তা নিশ্চিত করতে ডিভাইসগুলি ঘোরান এবং ভাঁজ করুন।

রিমোট ডিভাইস স্ট্রিমিং অ্যান্ড্রয়েড স্টুডিওতে সংহত করা হয়েছে। আরও তথ্যের জন্য, ফায়ারবেস দ্বারা চালিত অ্যান্ড্রয়েড ডিভাইস স্ট্রিমিং দেখুন।

অতিরিক্ত সম্পদ

,

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

অভিযোজিত অ্যাপ্লিকেশনগুলি কী কী?

অভিযোজিত অ্যাপ্লিকেশনগুলি অ্যাপ্লিকেশন প্রদর্শনের পরিবর্তনের উপর ভিত্তি করে লেআউটগুলি পরিবর্তন করে, প্রাথমিকভাবে অ্যাপ্লিকেশন উইন্ডোর আকার। তবে অভিযোজিত অ্যাপ্লিকেশনগুলি ট্যাবলেটপ বা বইয়ের ভঙ্গি এবং স্ক্রিনের ঘনত্ব এবং ফন্টের আকারে পরিবর্তনগুলির মতো ভাঁজযোগ্য ডিভাইসের ভঙ্গিতে পরিবর্তনগুলিও সামঞ্জস্য করে।

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

চিত্র 1। অভিযোজিত অ্যাপ্লিকেশন বিভিন্ন উইন্ডো আকারের জন্য বিন্যাসকে অনুকূল করে।

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

অভিযোজিত অ্যাপ্লিকেশনগুলি দুর্দান্ত দেখায় এবং কোনও কনফিগারেশনে যে কোনও ডিভাইসে ভাল কাজ করে।

অভিযোজিত ইউআইএস কেন তৈরি করবেন?

ব্যবহারকারীরা আশা করেন যে আপনার অ্যাপ্লিকেশনটি তাদের সমস্ত ডিভাইসে নির্দোষভাবে কাজ করবে এবং বড় স্ক্রিনগুলিতে বর্ধিত ক্ষমতা সরবরাহ করবে। ব্যবহারকারীরা বর্ধিত অ্যাপ্লিকেশন অভিজ্ঞতা এবং উত্পাদনশীলতা বৃদ্ধির জন্য মাল্টি-উইন্ডো মোডে মাল্টিটাস্ক।

স্ট্যান্ডার্ড ফোনে একক-টাস্কিংয়ের মধ্যে সীমাবদ্ধ অ্যাপ্লিকেশনগুলি বিভিন্ন সম্ভাবনার প্রসারিত ব্যবহারকারী বেসটি মিস করে।

গুগল প্লে

গুগল প্লে ট্যাবলেট- এবং ভাঁজযোগ্য-নির্দিষ্ট অ্যাপ্লিকেশন সংগ্রহ এবং সুপারিশ সরবরাহ করে যা ব্যবহারকারীদের উচ্চমানের অ্যাপ্লিকেশনগুলি আবিষ্কার করতে সক্ষম করে।

প্লে অ্যাপস এবং গেমগুলি বৃহত পর্দার জন্য অনুকূলিত অ্যাপ্লিকেশনগুলিকে উচ্চতর করে তোলে। র‌্যাঙ্কিং বড় স্ক্রিন অ্যাপের মানের নির্দেশিকাগুলির উপর ভিত্তি করে। উচ্চতর র‌্যাঙ্কিং মাল্টি -ডিভাইস ব্যবহারকারীদের তাদের ফোনে বড় স্ক্রিন - নির্দিষ্ট রেটিং এবং পর্যালোচনাগুলি দেখতে সক্ষম করে আবিষ্কারযোগ্যতা বৃদ্ধি করে।

প্লে স্টোরের বৃহত স্ক্রিনের মানের মানগুলি পূরণ করে না এমন অ্যাপ্লিকেশনগুলি অ্যাপ্লিকেশন বিশদ পৃষ্ঠায় একটি সতর্কতা প্রদর্শন করে। সতর্কতা ব্যবহারকারীদের পরামর্শ দেয় যে অ্যাপটি তাদের বড় স্ক্রিন ডিভাইসে ভাল পারফর্ম করতে পারে না।

চিত্র 2। অ্যাপ্লিকেশন বিশদ পৃষ্ঠায় প্রযুক্তিগত মানের সতর্কতা।

গুগল প্লেতে আবিষ্কারযোগ্যতা বিস্তৃত করতে অভিযোজিত অ্যাপ্লিকেশনগুলি তৈরি করুন এবং আপনার অ্যাপ্লিকেশনটি ডাউনলোড করতে পারে এমন ডিভাইসের সংখ্যা সর্বাধিক করুন।

কিভাবে শুরু করবেন

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

সমস্ত প্রদর্শনের আকার এবং কনফিগারেশনগুলিকে সমর্থন করে এমন একটি অভিযোজিত অ্যাপ্লিকেশন তৈরি করতে নিম্নলিখিতগুলি করুন:

  • বিন্যাসের সিদ্ধান্ত নিতে উইন্ডো আকারের ক্লাস ব্যবহার করুন
  • কমপোজ মেটেরিয়াল 3 অ্যাডাপটিভ লাইব্রেরি দিয়ে তৈরি করুন
  • স্পর্শের বাইরে ইনপুট সমর্থন
  • সমস্ত ডিভাইসের ধরণের পরীক্ষা

উইন্ডো সাইজ ক্লাস

অ্যাপ্লিকেশন উইন্ডো মাত্রা বিভিন্ন ডিভাইসে - বা ফোল্ডেবলের ক্ষেত্রে একই ডিভাইসে আলাদা হতে পারে - এমনকি অ্যাপ্লিকেশনটি পুরো স্ক্রিন হলেও। বিভিন্ন ডিভাইস ওরিয়েন্টেশন বিভিন্ন দিক অনুপাত উত্পাদন করে। মাল্টি -ওয়াইন্ডো মোডে, অ্যাপ্লিকেশন উইন্ডো আকার, দিক অনুপাত এবং ওরিয়েন্টেশন ডিভাইসের স্ক্রিনের থেকে পৃথক হতে পারে।

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

উইন্ডো আকারের ক্লাসগুলি অ্যাপ্লিকেশন উইন্ডোজকে কমপ্যাক্ট , মাঝারি বা উইন্ডো প্রস্থ বা উচ্চতার উপর ভিত্তি করে প্রসারিত হিসাবে শ্রেণীবদ্ধ করে।

কমপ্যাক্ট, মাঝারি এবং প্রসারিত প্রস্থ উইন্ডো আকারের শ্রেণীর চিত্র।
চিত্র 3। প্রদর্শন প্রস্থের উপর ভিত্তি করে উইন্ডো আকারের ক্লাস।

কমপোজ currentWindowAdaptiveInfo() 3 অ্যাডাপটিভ লাইব্রেরির শীর্ষ স্তরের ফাংশনটি ব্যবহার করে আপনার অ্যাপ্লিকেশনটির WindowSizeClass গণনা করুন। ফাংশনটি WindowAdaptiveInfo ইনফোর একটি উদাহরণ দেয়, এতে windowSizeClass রয়েছে। আপনার অ্যাপ্লিকেশন যখনই উইন্ডো আকারের শ্রেণি পরিবর্তন করে আপডেটগুলি গ্রহণ করে:

val windowSizeClass = currentWindowAdaptiveInfo().windowSizeClass

সামগ্রী প্যান

একটি ক্রিয়াকলাপের বিন্যাস কখনও কখনও স্ক্রিন হিসাবে উল্লেখ করা হয়। উদাহরণস্বরূপ, আপনার অ্যাপ্লিকেশনটিতে একটি হোম স্ক্রিন, একটি তালিকার স্ক্রিন এবং একটি আইটেম বিশদ স্ক্রিন থাকতে পারে। পরিভাষা বোঝায় যে প্রতিটি ক্রিয়াকলাপ ডিভাইসের স্ক্রিনটি পূরণ করে।

তবে, প্রসারিত প্রস্থ উইন্ডো আকারের শ্রেণিকে সমর্থন করার জন্য যথেষ্ট বড় ডিভাইস স্ক্রিনগুলিতে, একাধিক ক্রিয়াকলাপের স্ক্রিন একই সময়ে অনস্ক্রিন হতে পারে। পৃথক ক্রিয়াকলাপের সামগ্রী প্রদর্শনের জন্য ফলক আরও সুনির্দিষ্ট শব্দ।

উইন্ডো আকারের ক্লাসগুলি আপনাকে উপাদান নকশায় উল্লিখিত হিসাবে মাল্টি -পেন লেআউটগুলিতে কতগুলি সামগ্রী প্যানগুলি দেখাতে পারে তা নির্ধারণ করতে সক্ষম করে।

ডিভাইস স্ক্রিনগুলি প্যানে বিভক্ত: কমপ্যাক্ট এবং মাঝারি উইন্ডো আকারের ক্লাসে একটি ফলক, প্রসারিত উইন্ডো আকারের শ্রেণিতে দুটি প্যান।
চিত্র 4। উইন্ডো আকারের শ্রেণীর প্রতি সামগ্রী প্যানগুলির সংখ্যা।

প্যানগুলি নাব্যযোগ্য। কমপ্যাক্ট এবং মাঝারি উইন্ডো আকারের ক্লাসগুলিতে, অ্যাপ্লিকেশনগুলি একটি একক ফলক প্রদর্শন করে; এবং তাই, যে কোনও গন্তব্যে নেভিগেশন একটি ফলক প্রদর্শন করে।

প্রসারিত উইন্ডো আকারের শ্রেণিতে, অ্যাপ্লিকেশনগুলি একাধিক প্যানে সম্পর্কিত সামগ্রী যেমন একটি তালিকা - ডিটেল লেআউট প্রদর্শন করতে পারে। উভয় পেনের নেভিগেশন দুটি পেন বিন্যাস প্রদর্শন করে। যদি উইন্ডোর আকার কমপ্যাক্ট বা মাঝারি পরিবর্তিত হয় তবে অভিযোজিত অ্যাপ্লিকেশনগুলি কেবল একটি ফলক, নেভিগেশন গন্তব্য, তালিকা বা বিশদটি দেখায়।

চিত্র 5। নেভিগেশন টার্গেট হিসাবে তালিকা ফলক সহ তালিকা-বিন্যাস লেআউট।
চিত্র 6। নেভিগেশন টার্গেট হিসাবে বিশদ ফলক সহ তালিকা-বিন্যাস লেআউট।

উপাদান 3 অভিযোজিত রচনা

জেটপ্যাক রচনাটি একাধিক লেআউট ফাইলগুলির সদৃশ এবং রক্ষণাবেক্ষণের বোঝা ছাড়াই অভিযোজিত অ্যাপ্লিকেশনগুলি তৈরির আধুনিক, ঘোষণামূলক পদ্ধতি।

কমপোজ মেটেরিয়াল 3 অ্যাডাপটিভ লাইব্রেরিতে কমপোজেবল রয়েছে যা উইন্ডো আকারের ক্লাস, নেভিগেশন উপাদানগুলি, মাল্টি - পেন লেআউট এবং ভাঁজযোগ্য ভঙ্গি এবং কব্জা অবস্থান পরিচালনা করে, উদাহরণস্বরূপ:

  • NavigationSuiteScaffold : অ্যাপ উইন্ডো আকার শ্রেণি এবং ডিভাইস ভঙ্গির উপর নির্ভর করে স্বয়ংক্রিয়ভাবে নেভিগেশন বার এবং নেভিগেশন রেলের মধ্যে স্যুইচ করে।

  • ListDetailPaneScaffold : তালিকা-ডেটেল ক্যানোনিকাল লেআউট প্রয়োগ করে।

    অ্যাপ উইন্ডো আকারের লেআউটটি অভিযোজিত করে। প্রসারিত উইন্ডো আকারের শ্রেণীর পাশের দিক দিয়ে - পাশের একটি তালিকা এবং একটি তালিকা আইটেমের বিশদ উপস্থাপন করে তবে কেবল তালিকা বা কমপ্যাক্ট এবং মাঝারি উইন্ডো আকারের শ্রেণীর বিশদ বিবরণ।

  • SupportingPaneScaffold : সমর্থনকারী ফলক ক্যানোনিকাল লেআউট প্রয়োগ করে।

    প্রসারিত উইন্ডো আকারের শ্রেণিতে প্রধান বিষয়বস্তু ফলক এবং একটি সহায়ক ফলক উপস্থাপন করে তবে কমপ্যাক্ট এবং মাঝারি উইন্ডো আকারের শ্রেণিতে কেবল মূল সামগ্রী ফলকটি উপস্থাপন করে।

কমপোজ মেটেরিয়াল 3 অ্যাডাপটিভ লাইব্রেরি হ'ল অ্যাডাপটিভ অ্যাপ্লিকেশনগুলি বিকাশের জন্য নির্ভরতা।

কনফিগারেশন এবং ধারাবাহিকতা

অভিযোজিত অ্যাপ্লিকেশনগুলি কনফিগারেশন পরিবর্তনের সময় ধারাবাহিকতা বজায় রাখে।

অ্যাপ্লিকেশন উইন্ডোটি পুনরায় আকার দেওয়ার সময়, ভাঁজযোগ্য পরিবর্তনের ভঙ্গি বা স্ক্রিনের ঘনত্ব বা ফন্ট পরিবর্তন করার সময় একটি কনফিগারেশন পরিবর্তন ঘটে।

ডিফল্টরূপে, কনফিগারেশন পরিবর্তনগুলি অ্যাপ্লিকেশন ক্রিয়াকলাপটি পুনরায় তৈরি করে এবং সমস্ত ক্রিয়াকলাপের অবস্থা হারিয়ে যায়। ধারাবাহিকতা বজায় রাখতে, অভিযোজিত অ্যাপ্লিকেশনগুলি ক্রিয়াকলাপের onSaveInstanceState() পদ্ধতিতে বা ViewModel স্টেটকে সংরক্ষণ করে।

ভঙ্গি

অভিযোজিত অ্যাপ্লিকেশনগুলি ভাঁজযোগ্য ডিভাইসের ভঙ্গিতে পরিবর্তনের প্রতিক্রিয়া জানায়। ভঙ্গিতে ট্যাবলেটপ এবং বইয়ের ভঙ্গি অন্তর্ভুক্ত।

চিত্র 7। ট্যাবলেটপ ভঙ্গিতে ভাঁজযোগ্য ডিভাইস।

জেটপ্যাক উইন্ডো ম্যানেজারে WindowInfoTracker ইন্টারফেস আপনাকে ডিভাইসের জন্য DisplayFeature অবজেক্টগুলির একটি তালিকা পেতে সক্ষম করে। ডিসপ্লে বৈশিষ্ট্যগুলির মধ্যে রয়েছে FoldingFeature.State , যা ডিভাইসটি পুরোপুরি বা অর্ধেক খোলা আছে কিনা তা নির্দেশ করে।

কমপোজ মেটেরিয়াল 3 অ্যাডাপটিভ লাইব্রেরি currentWindowAdaptiveInfo() শীর্ষ স্তরের ফাংশন সরবরাহ করে, যা WindowAdaptiveInfo windowPosture একটি উদাহরণ দেয়।

স্পর্শের বাইরে ইনপুট

ব্যবহারকারীরা প্রায়শই বহিরাগত কীবোর্ড, ট্র্যাকপ্যাড, ইঁদুর এবং স্টাইলাসকে বড় স্ক্রিন ডিভাইসে সংযুক্ত করে। পেরিফেরিয়ালগুলি ব্যবহারকারীর উত্পাদনশীলতা, ইনপুট নির্ভুলতা, ব্যক্তিগত অভিব্যক্তি এবং অ্যাক্সেসযোগ্যতা বাড়ায়। বেশিরভাগ ক্রোমিওস ডিভাইসগুলি কীবোর্ড এবং ট্র্যাকপ্যাডগুলি অন্তর্নির্মিত সহ আসে।

অভিযোজিত অ্যাপ্লিকেশনগুলি বাহ্যিক ইনপুট ডিভাইসগুলিকে সমর্থন করে তবে অ্যান্ড্রয়েড ফ্রেমওয়ার্ক দ্বারা আপনার জন্য বেশিরভাগ কাজ করা হয়:

  • জেটপ্যাক রচনা 1.7 এবং উচ্চতর: কীবোর্ড ট্যাব নেভিগেশন এবং মাউস বা ট্র্যাকপ্যাড ক্লিক করুন, নির্বাচন করুন এবং স্ক্রোল ডিফল্টরূপে সমর্থিত।

  • জেটপ্যাক androidx.compose.material3 3 লাইব্রেরি: ব্যবহারকারীদের স্টাইলাস ব্যবহার করে যে কোনও TextField উপাদানটিতে লিখতে সক্ষম করে।

  • কীবোর্ড শর্টকাটস হেল্পার : অ্যান্ড্রয়েড প্ল্যাটফর্ম এবং অ্যাপ্লিকেশন কীবোর্ড শর্টকাটগুলি ব্যবহারকারীদের দ্বারা আবিষ্কারযোগ্য করে তোলে। onProvideKeyboardShortcuts() উইন্ডো কলব্যাককে ওভাররাইড করে কীবোর্ড শর্টকাটস হেল্পারে আপনার অ্যাপ্লিকেশনটির কীবোর্ড শর্টকাটগুলি প্রকাশ করুন।

সমস্ত আকারের ফর্ম ফ্যাক্টরগুলি সম্পূর্ণরূপে সমর্থন করার জন্য, অভিযোজিত অ্যাপ্লিকেশনগুলি সমস্ত ধরণের ইনপুট সমর্থন করে।

অভিযোজিত অ্যাপ্লিকেশনগুলি কীভাবে পরীক্ষা করবেন

বিভিন্ন স্ক্রিন এবং উইন্ডো আকার এবং বিভিন্ন ডিভাইস কনফিগারেশন পরীক্ষা করুন । আপনার অ্যাপ্লিকেশন লেআউটগুলি পরীক্ষা করতে হোস্ট -পাশের স্ক্রিনশটগুলি ব্যবহার করুন এবং প্রাকদর্শন রচনা করুন। গুগল ডেটা সেন্টারে হোস্ট করা অ্যান্ড্রয়েড স্টুডিও এমুলেটর এবং রিমোট অ্যান্ড্রয়েড ডিভাইসে আপনার অ্যাপটি চালান।

বড় স্ক্রিন অ্যাপ মানের নির্দেশিকা

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

একাধিক কনফিগারেশন

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

DeviceConfigurationOverride.then() এক্সটেনশন ফাংশন, আপনি একাধিক কনফিগারেশন পরামিতি যেমন ফন্টের আকার, লোকেল, থিম এবং লেআউট আকার একই সময়ে পরীক্ষা করতে পারেন।

হোস্ট-সাইড স্ক্রিনশট

হোস্ট-সাইড স্ক্রিনশট পরীক্ষাগুলি আপনার অ্যাপ্লিকেশন লেআউটগুলির ভিজ্যুয়াল উপস্থিতি যাচাই করার একটি দ্রুত এবং স্কেলযোগ্য উপায়। বিভিন্ন ডিসপ্লে আকারের জন্য আপনার ইউআই পরীক্ষা করতে হোস্ট-সাইড স্ক্রিনশটগুলি ব্যবহার করুন।

আরও তথ্যের জন্য, রচনা পূর্বরূপ স্ক্রিনশট টেস্টিং দেখুন।

পূর্বরূপ রচনা

প্রাকদর্শন রচনা আপনাকে অ্যান্ড্রয়েড স্টুডিওর ডিজাইন ভিউতে আপনার অ্যাপ্লিকেশনটির ইউআই পরীক্ষা করতে সক্ষম করে। পূর্বরূপগুলি আপনাকে বিভিন্ন কনফিগারেশনে কমপোজেবল সামগ্রী দেখতে দিতে @PreviewScreenSizes , @PreviewFontScale এবং @PreviewLightDark এর মতো টীকাগুলি ব্যবহার করে। আপনি এমনকি পূর্বরূপগুলির সাথে যোগাযোগ করতে পারেন।

অ্যান্ড্রয়েড স্টুডিও পূর্বরূপগুলিতে সাধারণ ব্যবহারযোগ্যতার সমস্যাগুলিও হাইলাইট করে যেমন বোতাম বা পাঠ্য ক্ষেত্রগুলি যা খুব প্রশস্ত।

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

এমুলেটর

অ্যান্ড্রয়েড স্টুডিও বিভিন্ন লেআউট আকার পরীক্ষা করার জন্য বিভিন্ন এমুলেটর সরবরাহ করে:

  • পুনর্নির্মাণযোগ্য এমুলেটর: একটি ফোন, ট্যাবলেট বা ভাঁজযোগ্য ডিভাইস অনুকরণ করে এবং আপনাকে ফ্লাইতে তাদের মধ্যে স্যুইচ করতে দেয়
  • পিক্সেল ভাঁজ এমুলেটর: পিক্সেল ভাঁজ বড় স্ক্রিন ফোল্ডেবল ফোনটি অনুকরণ করে
  • পিক্সেল ট্যাবলেট এমুলেটর: পিক্সেল ট্যাবলেট বড় স্ক্রিন ডিভাইসটি অনুকরণ করে
  • ডেস্কটপ এমুলেটর: ফ্রি-ফর্ম উইন্ডোইং, মাউস হোভার এবং কীবোর্ড শর্টকাটগুলির পরীক্ষা সক্ষম করে

দূরবর্তী ডিভাইস স্ট্রিমিং

সুরক্ষিতভাবে গুগল ডেটা সেন্টারে হোস্ট করা রিমোট অ্যান্ড্রয়েড ডিভাইসের সাথে যোগাযোগ করুন এবং সর্বশেষতম পিক্সেল এবং স্যামসাং ডিভাইসে আপনার অ্যাপ্লিকেশনটি চালান। অ্যাপ্লিকেশনগুলি ইনস্টল করুন এবং ডিবাগ করুন, এডিবি কমান্ডগুলি চালান এবং আপনার অ্যাপ্লিকেশনটি বিভিন্ন রিয়েল ডিভাইসে ভালভাবে কাজ করে তা নিশ্চিত করতে ডিভাইসগুলি ঘোরান এবং ভাঁজ করুন।

রিমোট ডিভাইস স্ট্রিমিং অ্যান্ড্রয়েড স্টুডিওতে সংহত করা হয়েছে। আরও তথ্যের জন্য, ফায়ারবেস দ্বারা চালিত অ্যান্ড্রয়েড ডিভাইস স্ট্রিমিং দেখুন।

অতিরিক্ত সম্পদ