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

আপনার উইজেটটি অ্যান্ড্রয়েড ১২ এর সাথে সামঞ্জস্যপূর্ণ কিনা তা নিশ্চিত করুন।
অ্যান্ড্রয়েড ১২-এর উইজেটগুলোর কোণা গোলাকার হয়। যখন অ্যান্ড্রয়েড ১২ বা তার উচ্চতর সংস্করণে চালিত কোনো ডিভাইসে একটি অ্যাপ উইজেট ব্যবহার করা হয়, তখন লঞ্চারটি স্বয়ংক্রিয়ভাবে উইজেটটির ব্যাকগ্রাউন্ড শনাক্ত করে এবং সেটিকে ক্রপ করে গোলাকার কোণাযুক্ত করে তোলে।
এই পরিস্থিতিতে, নিম্নলিখিত শর্তগুলির যেকোনো একটিতে আপনার উইজেটটি সঠিকভাবে প্রদর্শিত নাও হতে পারে:
উইজেটটির কোণায় কন্টেন্ট রয়েছে : এর ফলে কোণার কিছু কন্টেন্ট কেটে যেতে পারে।
উইজেটটি এমন একটি ব্যাকগ্রাউন্ড ব্যবহার করে যা ক্রপ হওয়ার ঝুঁকিতে থাকে না । এর মধ্যে রয়েছে স্বচ্ছ ব্যাকগ্রাউন্ড, খালি ভিউ বা লেআউট, অথবা ক্রপ হওয়ার সম্ভাবনা নেই এমন অন্য যেকোনো ধরনের বিশেষ ব্যাকগ্রাউন্ড। সিস্টেমটি ব্যবহারের জন্য ব্যাকগ্রাউন্ডটি সঠিকভাবে শনাক্ত করতে সক্ষম নাও হতে পারে।
যদি আপনার উইজেটটি এই পরিবর্তনের দ্বারা প্রভাবিত হয়, তবে এটি যাতে সঠিকভাবে প্রদর্শিত হয় তা নিশ্চিত করার জন্য আমরা এটিকে গোলাকার কোণা সহ রিফ্রেশ করার পরামর্শ দিচ্ছি (যেমনটি পরবর্তী বিভাগে বর্ণনা করা হয়েছে)।
নমুনা ব্যবহার করুন
এই সমস্ত এপিআই-এর কার্যকারিতা দেখতে আমাদের নমুনা তালিকা উইজেটটি দেখুন।
গোলাকার কোণা প্রয়োগ করুন
অ্যান্ড্রয়েড ১২ আপনার উইজেটের গোলাকার কোণার ব্যাসার্ধ নির্ধারণ করার জন্য system_app_widget_background_radius এবং system_app_widget_inner_radius নামক সিস্টেম প্যারামিটার চালু করেছে।

উইজেটটির ১ নং কোণা।
২ উইজেটের ভেতরের দৃশ্যের একটি কোণা।
বিস্তারিত জানতে, ‘Mipulate rounded corners’ দেখুন।
ডিভাইস থিমিং যোগ করুন
অ্যান্ড্রয়েড ১২ থেকে, একটি উইজেট তার বাটন, ব্যাকগ্রাউন্ড এবং অন্যান্য উপাদানের জন্য ডিভাইস থিমের রঙ ব্যবহার করতে পারে, যার মধ্যে লাইট ও ডার্ক থিমও অন্তর্ভুক্ত। এর ফলে বিভিন্ন উইজেটের মধ্যে মসৃণ ট্রানজিশন এবং সামঞ্জস্য বজায় থাকে।
আরও তথ্যের জন্য ‘ডিভাইস থিমিং যোগ করুন’ দেখুন।


উইজেট ব্যক্তিগতকরণ আরও সহজ করুন
যদি আপনি appwidget-provider এর configure অ্যাট্রিবিউটের মাধ্যমে কোনো কনফিগারেশন অ্যাক্টিভিটি নির্দিষ্ট করেন, তাহলে কোনো ব্যবহারকারী তাদের হোম স্ক্রিনে উইজেটটি যুক্ত করার সাথে সাথেই অ্যাপ উইজেট হোস্ট সেই অ্যাক্টিভিটিটি চালু করে।
অ্যান্ড্রয়েড ১২ ব্যবহারকারীদের আরও ভালো কনফিগারেশন অভিজ্ঞতা দেওয়ার জন্য নতুন অপশন যোগ করেছে। বিস্তারিত জানতে ‘ব্যবহারকারীদের উইজেট কনফিগার করার অনুমতি দিন’ দেখুন।
নতুন যৌগিক বোতাম যোগ করুন
অ্যান্ড্রয়েড ১২ নিম্নলিখিত বিদ্যমান উপাদানগুলো ব্যবহার করে স্টেটফুল আচরণের জন্য নতুন সমর্থন যোগ করেছে:
উইজেটটি এখনও স্টেটলেস। আপনার অ্যাপকে অবশ্যই স্টেট সংরক্ষণ করতে হবে এবং স্টেট পরিবর্তনের ইভেন্টগুলোর জন্য রেজিস্টার করতে হবে।

বিস্তারিত জানতে, স্টেটফুল আচরণের জন্য সমর্থন দেখুন।
উইজেটের আকার এবং লেআউটের জন্য উন্নত এপিআই ব্যবহার করুন
অ্যান্ড্রয়েড ১২ থেকে, আপনি অতিরিক্ত উইজেট সাইজিং সীমাবদ্ধতা নির্দিষ্ট করে এবং রেসপন্সিভ লেআউট ও এক্সাক্ট লেআউট প্রদান করার মাধ্যমে আরও পরিমার্জিত সাইজ অ্যাট্রিবিউট এবং আরও নমনীয় লেআউটের সুবিধা নিতে পারবেন।
বিস্তারিত জানতে ‘নমনীয় উইজেট লেআউট প্রদান করুন’ দেখুন।
আপনার অ্যাপের উইজেট পিকারের অভিজ্ঞতা উন্নত করুন
অ্যান্ড্রয়েড ১২ আপনাকে ডাইনামিক উইজেট প্রিভিউ এবং উইজেট বিবরণ যোগ করার মাধ্যমে আপনার অ্যাপের উইজেট পিকারের অভিজ্ঞতা উন্নত করার সুযোগ দেয়। বিস্তারিত জানতে, উইজেট পিকার-এ স্কেলেবল উইজেট প্রিভিউ যোগ করুন এবং আপনার উইজেটের জন্য একটি বিবরণ যোগ করুন দেখুন।
মসৃণ রূপান্তর সক্ষম করুন
অ্যান্ড্রয়েড ১২ থেকে, কোনো ব্যবহারকারী যখন উইজেট থেকে আপনার অ্যাপ চালু করেন, তখন লঞ্চারগুলো আরও মসৃণ ট্রানজিশন প্রদান করে। বিস্তারিত জানতে ‘Enable smoother transitions’ দেখুন।
সরলীকৃত RemoteViews সংগ্রহ ব্যবহার করুন
অ্যান্ড্রয়েড ১২-এ setRemoteAdapter(int viewId, RemoteViews.RemoteCollectionItems items) মেথডটি যুক্ত করা হয়েছে, যা আপনার অ্যাপকে একটি ListView পপুলেট করার সময় সরাসরি একটি কালেকশন পাস করার সুযোগ দেয়। পূর্বে, একটি ListView ব্যবহার করার সময়, RemoteViewsFactory রিটার্ন করার জন্য একটি RemoteViewsService ইমপ্লিমেন্ট এবং ডিক্লেয়ার করা আবশ্যক ছিল।
বিস্তারিত জানতে, ‘Use RemoteViews collections’ দেখুন।
RemoteViews এর রানটাইম পরিবর্তন ব্যবহার করুন
অ্যান্ড্রয়েড ১২-এ বেশ কিছু RemoteViews মেথড যোগ করা হয়েছে, যা দিয়ে রানটাইমে RemoteViews অ্যাট্রিবিউটগুলো পরিবর্তন করা যায়। যোগ করা মেথডগুলোর সম্পূর্ণ তালিকার জন্য RemoteViews API রেফারেন্স দেখুন।
বিস্তারিত জানতে, RemoteViews এর রানটাইম পরিবর্তন ব্যবহার দেখুন।