উইজেটগুলি হোম স্ক্রীন কাস্টমাইজেশনের একটি অপরিহার্য দিক। আপনি এগুলিকে একটি অ্যাপের সবচেয়ে গুরুত্বপূর্ণ ডেটা এবং কার্যকারিতার "এক নজরে" ভিউ হিসাবে ভাবতে পারেন যা সরাসরি ব্যবহারকারীর হোম স্ক্রিনে অ্যাক্সেসযোগ্য৷ ব্যবহারকারীরা তাদের হোম স্ক্রীন প্যানেল জুড়ে উইজেটগুলিকে স্থানান্তর করতে পারে এবং, যদি সমর্থিত হয়, তাদের পছন্দ অনুসারে উইজেটে থাকা তথ্যের পরিমাণকে সাজাতে তাদের আকার পরিবর্তন করতে পারে।
এই ডকুমেন্টেশনটি আপনি তৈরি করতে পারেন এমন বিভিন্ন ধরণের উইজেট এবং অনুসরণ করার জন্য ডিজাইনের নীতিগুলি উপস্থাপন করে৷ রিমোট ভিউ এপিআই এবং এক্সএমএল লেআউট ব্যবহার করে একটি অ্যাপ উইজেট তৈরি করতে, একটি সাধারণ উইজেট তৈরি করুন দেখুন। Kotlin এবং রচনা শৈলী API ব্যবহার করে একটি উইজেট তৈরি করতে, Jetpack Glance দেখুন।
উইজেট প্রকার
আপনি আপনার উইজেট পরিকল্পনা করার সময়, আপনি কি ধরনের উইজেট তৈরি করতে চান সে সম্পর্কে চিন্তা করুন। উইজেটগুলি সাধারণত নিম্নলিখিত বিভাগগুলির মধ্যে একটিতে পড়ে:
তথ্য উইজেট
তথ্য উইজেটগুলি সাধারণত গুরুত্বপূর্ণ তথ্য উপাদানগুলি প্রদর্শন করে এবং সময়ের সাথে সেই তথ্য কীভাবে পরিবর্তিত হয় তা ট্র্যাক করে। তথ্য উইজেটগুলির উদাহরণ হল আবহাওয়া উইজেট, ঘড়ির উইজেট বা ক্রীড়া স্কোর ট্র্যাকিং উইজেট। তথ্য উইজেট ট্যাপ করা সাধারণত সংশ্লিষ্ট অ্যাপ চালু করে এবং উইজেট তথ্যের একটি বিশদ দৃশ্য খোলে।
সংগ্রহ উইজেট
সংগ্রহ উইজেটগুলি একই ধরণের একাধিক উপাদান প্রদর্শনে বিশেষজ্ঞ, যেমন একটি গ্যালারি অ্যাপ থেকে ছবির সংগ্রহ, একটি সংবাদ অ্যাপ থেকে নিবন্ধের সংগ্রহ, বা একটি যোগাযোগ অ্যাপ থেকে ইমেল বা বার্তাগুলির সংগ্রহ৷ সংগ্রহ উইজেটগুলি উল্লম্বভাবে স্ক্রোল করতে পারে।
সংগ্রহ উইজেটগুলি সাধারণত নিম্নলিখিত ব্যবহারের ক্ষেত্রে ফোকাস করে:
- সংগ্রহ ব্রাউজিং.
- সংশ্লিষ্ট অ্যাপে সংগ্রহের একটি উপাদানের বিস্তারিত দৃশ্যে খোলা হচ্ছে।
- উপাদানগুলির সাথে ইন্টারঅ্যাক্ট করা, যেমন সেগুলিকে সম্পন্ন চিহ্নিত করা—অ্যান্ড্রয়েড 12 (API স্তর 31) এ যৌগিক বোতামগুলির সমর্থন সহ।
নিয়ন্ত্রণ উইজেট
একটি কন্ট্রোল উইজেটের মূল উদ্দেশ্য হল প্রায়শই ব্যবহৃত ফাংশনগুলি প্রদর্শন করা যাতে ব্যবহারকারী অ্যাপটি খোলা ছাড়াই হোম স্ক্রীন থেকে সেগুলিকে ট্রিগার করতে পারে৷ আপনি এগুলিকে একটি অ্যাপের জন্য দূরবর্তী নিয়ন্ত্রণ হিসাবে ভাবতে পারেন৷ একটি কন্ট্রোল উইজেটের একটি উদাহরণ হল একটি হোম কন্ট্রোল উইজেট যা ব্যবহারকারীদের ঘরে লাইট চালু বা বন্ধ করতে দেয়।
একটি কন্ট্রোল উইজেটের সাথে ইন্টারঅ্যাক্ট করা অ্যাপে একটি সম্পর্কিত বিশদ দৃশ্য খুলতে পারে। এটি নির্ভর করে কন্ট্রোল উইজেটের ফাংশন কোনো ডেটা আউটপুট করে কিনা, যেমন সার্চ উইজেটের ক্ষেত্রে।
হাইব্রিড উইজেট
যদিও কিছু উইজেট পূর্ববর্তী বিভাগে-তথ্য, সংগ্রহ বা নিয়ন্ত্রণের একটি প্রকারের প্রতিনিধিত্ব করে-অনেক উইজেট হাইব্রিড যা বিভিন্ন ধরনের উপাদানকে একত্রিত করে। উদাহরণস্বরূপ, একটি মিউজিক প্লেয়ার উইজেট প্রাথমিকভাবে একটি নিয়ন্ত্রণ উইজেট, তবে এটি ব্যবহারকারীকে দেখায় যে বর্তমানে কোন ট্র্যাক চলছে, যেমন একটি তথ্য উইজেট।
আপনার উইজেট পরিকল্পনা করার সময়, একটি বেস প্রকারের চারপাশে ডিজাইন করুন এবং প্রয়োজন অনুসারে অন্যান্য ধরণের উপাদান যোগ করুন।
Google সহকারীর সাথে উইজেটগুলিকে একীভূত করুন৷
ব্যবহারকারীর ভয়েস কমান্ডের প্রতিক্রিয়া হিসাবে Google সহকারী দ্বারা যেকোনো ধরনের উইজেট প্রদর্শন করা যেতে পারে। আপনি অ্যাপ অ্যাকশনগুলি পূরণ করতে আপনার উইজেটগুলি কনফিগার করতে পারেন, যাতে ব্যবহারকারীরা Android এবং Android Auto- এর মতো অ্যাসিস্ট্যান্ট সারফেসে দ্রুত উত্তর এবং ইন্টারেক্টিভ অ্যাপ অভিজ্ঞতা পেতে পারেন। সহকারীর জন্য উইজেট পূর্ণতা সম্পর্কে আরও বিশদ বিবরণের জন্য, Android উইজেটগুলির সাথে অ্যাপ অ্যাকশন একীভূত করুন দেখুন।
উইজেট সীমাবদ্ধতা
যদিও উইজেটগুলিকে "মিনি অ্যাপস" হিসাবে বোঝা যায়, তবে কিছু নির্দিষ্ট সীমাবদ্ধতা রয়েছে যা আপনার উইজেট ডিজাইন করার আগে বোঝা গুরুত্বপূর্ণ৷
অঙ্গভঙ্গি
যেহেতু উইজেটগুলি হোম স্ক্রিনে লাইভ থাকে, তাই তাদের সেখানে প্রতিষ্ঠিত নেভিগেশনের সাথে সহাবস্থান করতে হবে। এটি একটি পূর্ণ-স্ক্রীন অ্যাপের তুলনায় উইজেটে উপলব্ধ অঙ্গভঙ্গি সমর্থনকে সীমিত করে। অ্যাপগুলি ব্যবহারকারীদের অনুভূমিকভাবে স্ক্রিনের মধ্যে নেভিগেট করতে দিতে পারে, সেই অঙ্গভঙ্গিটি ইতিমধ্যেই হোম স্ক্রীনের মধ্যে নেভিগেট করার উদ্দেশ্যে হোম স্ক্রিনে নেওয়া হয়েছে।
উইজেটগুলির জন্য উপলব্ধ একমাত্র অঙ্গভঙ্গি হল স্পর্শ এবং উল্লম্ব সোয়াইপ ।
উপাদান
উইজেটগুলির জন্য উপলব্ধ অঙ্গভঙ্গির সীমাবদ্ধতার প্রেক্ষিতে, কিছু UI বিল্ডিং ব্লক যা সীমাবদ্ধ অঙ্গভঙ্গির উপর নির্ভর করে উইজেটের জন্য উপলব্ধ নয়। সমর্থিত বিল্ডিং ব্লকগুলির একটি সম্পূর্ণ তালিকা এবং লেআউট সীমাবদ্ধতা সম্পর্কে আরও তথ্যের জন্য, উইজেট বিন্যাস তৈরি করুন এবং নমনীয় উইজেট বিন্যাস সরবরাহ করুন দেখুন।
ডিজাইন নির্দেশিকা
উইজেট বিষয়বস্তু
আপনার অ্যাপে উপলব্ধ নতুন এবং আকর্ষণীয় বিষয়বস্তু "বিজ্ঞাপন" করে আপনার অ্যাপে একজন ব্যবহারকারীকে আকৃষ্ট করার জন্য উইজেটগুলি একটি দুর্দান্ত উপায়।
একটি সংবাদপত্রের প্রথম পৃষ্ঠায় টিজারের মতো, উইজেটগুলি একটি অ্যাপের তথ্যকে একত্রিত করে এবং কেন্দ্রীভূত করে এবং অ্যাপের মধ্যে আরও সমৃদ্ধ বিশদে সংযোগ প্রদান করে৷ আপনি বলতে পারেন উইজেট হল তথ্য "স্ন্যাক" যখন অ্যাপ হল "খাবার"। নিশ্চিত করুন যে আপনার অ্যাপটি উইজেট যা প্রদর্শন করে তার চেয়ে তথ্য আইটেম সম্পর্কে আরও বিস্তারিত দেখায়।
উইজেট নেভিগেশন
বিশুদ্ধ তথ্য সামগ্রীর পাশাপাশি, আপনার উইজেটটিকে আপনার অ্যাপের প্রায়শই ব্যবহৃত এলাকায় নেভিগেশন লিঙ্কগুলি প্রদান করার কথা বিবেচনা করুন। এটি ব্যবহারকারীদের আরও দ্রুত কাজগুলি সম্পূর্ণ করতে দেয় এবং হোম স্ক্রিনে অ্যাপটির কার্যকরী নাগাল প্রসারিত করে।
উইজেটগুলিতে নেভিগেশন লিঙ্কগুলির জন্য ভাল প্রার্থীরা হল:
জেনারেটিভ ফাংশন: এগুলি এমন ফাংশন যা ব্যবহারকারীকে একটি অ্যাপের জন্য নতুন সামগ্রী তৈরি করতে দেয়, যেমন একটি নতুন নথি বা একটি নতুন বার্তা তৈরি করা।
উপরের স্তরে অ্যাপটি খুলুন: একটি তথ্য উপাদান আলতো চাপলে সাধারণত ব্যবহারকারীকে একটি নিম্ন-স্তরের বিশদ স্ক্রিনে নেভিগেট করে। আপনার অ্যাপ্লিকেশনের শীর্ষ স্তরে অ্যাক্সেস প্রদান করা আরও নেভিগেশন নমনীয়তা প্রদান করে এবং একটি ডেডিকেটেড অ্যাপ শর্টকাট প্রতিস্থাপন করতে পারে যা ব্যবহারকারীরা অন্যথায় হোম স্ক্রীন থেকে অ্যাপে নেভিগেট করতে ব্যবহার করেন। এই কার্যকারিতার জন্য আপনার অ্যাপ্লিকেশন আইকন ব্যবহার করা আপনার উইজেটটিকে একটি পরিষ্কার পরিচয় প্রদান করতে পারে যদি আপনি যে ডেটা প্রদর্শন করছেন তা অস্পষ্ট হয়৷
উইজেট আকার পরিবর্তন
একটি রিসাইজযোগ্য উইজেট স্পর্শ করা এবং ধরে রাখা এবং তারপর এটিকে রিলিজ করা উইজেটটিকে পুনরায় আকার মোডে রাখে। ব্যবহারকারীরা তাদের পছন্দের আকার সেট করতে ড্র্যাগ হ্যান্ডলগুলি বা উইজেট কোণগুলি ব্যবহার করতে পারেন।
আকার পরিবর্তন করা ব্যবহারকারীদের হোম স্ক্রীন প্লেসমেন্ট গ্রিডের সীমাবদ্ধতার মধ্যে একটি উইজেটের উচ্চতা এবং প্রস্থ সামঞ্জস্য করতে দেয়। আপনি সিদ্ধান্ত নিতে পারেন যে আপনার উইজেটটি অবাধে আকার পরিবর্তনযোগ্য বা অনুভূমিক বা উল্লম্ব আকার পরিবর্তনের জন্য সীমাবদ্ধ কিনা। আপনার উইজেটটি সহজাতভাবে স্থির আকারের হলে আপনাকে আকার পরিবর্তন সমর্থন করতে হবে না।
ব্যবহারকারীদের উইজেটগুলির আকার পরিবর্তন করতে দেওয়ার গুরুত্বপূর্ণ সুবিধা রয়েছে:
- তারা প্রতিটি উইজেটে কতটা তথ্য দেখতে চায় তা ঠিক করতে পারে।
- তারা তাদের হোম প্যানেলে উইজেট এবং শর্টকাটগুলির বিন্যাসকে আরও ভালভাবে প্রভাবিত করতে পারে।
আপনি যে ধরনের উইজেট তৈরি করছেন সেই অনুযায়ী আপনার উইজেটের জন্য একটি রিসাইজ কৌশল পরিকল্পনা করুন। তালিকা- বা গ্রিড-ভিত্তিক সংগ্রহ উইজেটগুলি সাধারণত সহজবোধ্য, কারণ উইজেটের আকার পরিবর্তন করা উল্লম্ব স্ক্রোলিং এলাকাকে প্রসারিত বা সংকুচিত করে। উইজেটের আকার নির্বিশেষে, ব্যবহারকারী এখনও সমস্ত তথ্য উপাদানগুলিকে দেখতে স্ক্রোল করতে পারে৷
তথ্য উইজেটগুলির জন্য আরও হ্যান্ডস-অন পরিকল্পনার প্রয়োজন, কারণ সেগুলি স্ক্রোলযোগ্য নয় এবং সমস্ত বিষয়বস্তু একটি নির্দিষ্ট আকারের মধ্যে ফিট করতে হবে। আপনাকে অবশ্যই আপনার উইজেটের বিষয়বস্তু এবং বিন্যাসকে পরিবর্তনশীলভাবে পরিবর্তন করতে হবে।
নিম্নলিখিত উদাহরণে, ব্যবহারকারী তিনটি ধাপে একটি আবহাওয়ার উইজেটের আকার পরিবর্তন করতে পারে, উইজেট বৃদ্ধির সাথে সাথে বর্তমান অবস্থানে আবহাওয়া সম্পর্কে আরও সমৃদ্ধ তথ্য প্রকাশ করে।
প্রতিটি উইজেট আকারের জন্য, আপনার অ্যাপের তথ্য কতটা প্রদর্শিত হবে তা নির্ধারণ করুন। ছোট আকারের জন্য, প্রয়োজনীয় তথ্যগুলিতে মনোনিবেশ করুন এবং তারপরে উইজেটটি অনুভূমিকভাবে এবং উল্লম্বভাবে বৃদ্ধির সাথে সাথে প্রাসঙ্গিক তথ্য যোগ করুন।
লেআউট বিবেচনা
আপনি যে ডিভাইসের সাথে ডেভেলপ করেন তার প্লেসমেন্ট গ্রিডের মাত্রা অনুযায়ী আপনার উইজেটগুলিকে সাজানো লোভনীয়। এটি একটি দরকারী প্রাথমিক আনুমানিক হতে পারে, তবে নিম্নলিখিত পয়েন্টগুলি মনে রাখবেন:
- পরিবর্তনশীল গ্রিড মাত্রার পরিবর্তে "আকারের বালতি" জুড়ে আপনার উইজেট আকার পরিবর্তন করার কৌশল পরিকল্পনা করা আপনাকে সবচেয়ে নির্ভরযোগ্য ফলাফল দেয়।
- কক্ষের সংখ্যা, আকার এবং ব্যবধান ডিভাইস থেকে ডিভাইসে ব্যাপকভাবে পরিবর্তিত হতে পারে। অতএব, এটা খুবই গুরুত্বপূর্ণ যে আপনার উইজেটটি নমনীয় এবং প্রত্যাশিত থেকে কম বা বেশি জায়গা মিটমাট করতে পারে।
- ব্যবহারকারী একটি উইজেটের আকার পরিবর্তন করার সাথে সাথে সিস্টেমটি একটি dp আকারের পরিসরের সাথে প্রতিক্রিয়া জানায় যেখানে আপনার উইজেটটি নিজেকে পুনরায় আঁকতে পারে।
- Android 12 থেকে শুরু করে, আপনি আরও পরিমার্জিত আকারের বৈশিষ্ট্য এবং আরও নমনীয় লেআউট প্রদান করতে পারেন। এর মধ্যে রয়েছে:
- উইজেট আকারের সীমাবদ্ধতা নির্দিষ্ট করা । উদাহরণস্বরূপ, আপনি আপনার উইজেটের জন্য লক্ষ্য আকার নির্দিষ্ট করতে পারেন — গ্রিড কোষগুলিতে — সেইসাথে সর্বাধিক সম্ভাব্য আকার।
- প্রতিক্রিয়াশীল লেআউট প্রদান করা, যা উইজেটের আকারের উপর নির্ভর করে পরিবর্তিত হয়।
- সঠিক-আকারের লেআউট প্রদান করা, যা লঞ্চারকে প্রতিকৃতি এবং ল্যান্ডস্কেপ মোড, ফোনের জন্য বা ফোল্ডেবলের জন্য চার মাপের আকারের বিকল্পগুলির সাথে প্রতিক্রিয়া জানাতে দেয়৷
- আপনার উইজেটের সঠিক মাপ নির্ধারণ করতে আপডেট করা নির্দেশিকা এবং নতুন API ব্যবহার করা।
ব্যবহারকারীদের দ্বারা উইজেট কনফিগারেশন
কখনও কখনও, ব্যবহারকারীকে উইজেটটি উপযোগী হওয়ার আগে সেট আপ করতে হবে। একটি ইমেল উইজেটের কথা ভাবুন যেখানে ব্যবহারকারীকে ইনবক্সটি প্রদর্শিত হওয়ার আগে মেল ফোল্ডারটি নির্বাচন করতে হবে বা একটি স্ট্যাটিক ফটো উইজেট যেখানে ব্যবহারকারীকে প্রদর্শনের জন্য গ্যালারি থেকে একটি ছবি বরাদ্দ করতে হবে৷ অ্যান্ড্রয়েড উইজেটগুলি তাদের কনফিগারেশন পছন্দগুলি প্রদর্শন করে যখন ব্যবহারকারী উইজেটটিকে হোম স্ক্রিনে ফেলে দেয়।
উইজেট ডিজাইন চেকলিস্ট
- আপনার উইজেটে নজরকাড়া তথ্যের ছোট অংশগুলিতে ফোকাস করুন। আপনার অ্যাপে তথ্য প্রসারিত করুন।
- আপনার উদ্দেশ্যে সঠিক উইজেট টাইপ চয়ন করুন.
- আপনার উইজেটের বিষয়বস্তু কীভাবে বিভিন্ন আকারের সাথে খাপ খায় তা পরিকল্পনা করুন।
- লেআউট প্রসারিত এবং সংকোচন করতে পারে তা নিশ্চিত করে আপনার উইজেট লেআউটকে ওরিয়েন্টেশন এবং ডিভাইস থেকে স্বাধীন করুন।
- আপনার উইজেটের কোন অতিরিক্ত কনফিগারেশন প্রয়োজন কিনা তা বিবেচনা করুন।