আপনার উইজেট পিকারে জেনারেট করা প্রিভিউ যোগ করা

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

Glance-ভিত্তিক উইজেটের জন্য কীভাবে প্রিভিউ প্রদান করতে হয় তা এই গাইডে কভার করা হয়েছে। আপনার উইজেট RemoteViews-এর সাথে প্রয়োগ করা হলে, আপনার উইজেট পিকারে প্রিভিউ যোগ করুন বিকল্প দেখুন।

Glance উইজেটের জন্য আপনার অ্যাপের উইজেট পিকার অভিজ্ঞতা উন্নত করতে, Android 15 এবং তার পরবর্তী যেকোনও ভার্সনের ডিভাইসে GlanceAppWidget.providePreview ব্যবহার করে একটি জেনারেট করা উইজেট প্রিভিউ প্রদান করুন এবং পুরনো ভার্সনের জন্য একটি previewImage নির্দিষ্ট করুন এবং Android 15+ ভার্সনে ফলব্যাক হিসেবে, জেনারেট করা প্রিভিউ উপলভ্য না থাকলে।

আরও তথ্যের জন্য, YouTube-এ লাইভ আপডেট ও উইজেটের মাধ্যমে আপনার অ্যাপ সমৃদ্ধ করুন দেখুন।

জেনারেট করা উইজেট প্রিভিউয়ের জন্য আপনার অ্যাপ সেট-আপ করুন

Android 15 বা তার পরবর্তী ভার্সনের ডিভাইসে জেনারেট করা উইজেট প্রিভিউ দেখাতে, প্রথমে compileSdk-এর ভ্যালু build.gradle মডিউল ফাইলে ৩৫ বা তার বেশি সেট করুন যাতে উইজেট পিকারে জেনারেট করা প্রিভিউ চালু করা যায়।

অ্যাপগুলি তখন GlanceAppWidgetManager-এ setWidgetPreview ব্যবহার করতে পারে। অপব্যবহার প্রতিরোধ করতে এবং সিস্টেমের স্বাস্থ্য সংক্রান্ত সমস্যা কমাতে, setWidgetPreview হল একটি রেট-সীমিত API। ডিফল্ট সীমা হল প্রতি ঘণ্টায় আনুমানিক দুটি কল।

Jetpack Glance-এর সাহায্যে আপডেট করা প্রিভিউ জেনারেট করা

Jetpack Glance-এর মাধ্যমে তৈরি করা উইজেটের জন্য, নিম্নলিখিত ধাপগুলি অনুসরণ করুন:

  1. প্রিভিউয়ের জন্য কম্পোজেবল কন্টেন্ট প্রদান করতে GlanceAppWidget.providePreview ফাংশন ওভাররাইড করুন। provideGlance-এ যেভাবে করেন, ঠিক সেভাবেই আপনার অ্যাপের ডেটা লোড করুন এবং উইজেটের কন্টেন্ট কম্পোজেবলে পাস করুন, যাতে প্রিভিউতে সঠিক ডেটা দেখানো যায়। provideGlance-এর মতো নয়, এটি একটি সিঙ্গল কম্পোজিশন যাতে কোনও রিকম্পোজিশন বা এফেক্ট নেই।

  2. প্রিভিউ জেনারেট ও প্রকাশ করতে GlanceAppWidgetManager.setWidgetPreviews কল করুন।

প্রিভিউ দেখানোর জন্য সিস্টেম থেকে কোনও কলব্যাক নেই, তাই আপনার অ্যাপকে সিদ্ধান্ত নিতে হবে কখন setWidgetPreviews কল করতে হবে। আপডেট করার কৌশল আপনার উইজেটের ব্যবহারের উপর নির্ভর করে:

  • উইজেটে স্ট্যাটিক তথ্য থাকলে বা এটি দ্রুত অ্যাকশন হলে, অ্যাপ প্রথমবার লঞ্চ করার সময় প্রিভিউ সেট করুন।
  • আপনার অ্যাপে ডেটা থাকলে আপনি প্রিভিউ সেট করতে পারবেন; যেমন, ব্যবহারকারী সাইন-ইন করার পরে বা প্রাথমিক সেট-আপের পরে।
  • আপনি বেছে নেওয়া ক্যাডেন্স অনুযায়ী প্রিভিউ আপডেট করার জন্য একটি পর্যায়ক্রমিক টাস্ক সেট-আপ করতে পারেন।

জেনারেট করা প্রিভিউ সংক্রান্ত সমস্যার সমাধান করা

একটি সাধারণ সমস্যা হল, আপনি প্রিভিউ জেনারেট করার পরে, উইজেটের ড্রপ সাইজের তুলনায় প্রিভিউ ছবি থেকে ছবি, আইকন বা অন্যান্য কম্পোজেবল মিসিং থাকতে পারে। এই ড্রপ সাইজ targetCellWidth এবং targetCellHeight-এর মাধ্যমে নির্দিষ্ট করা হয়, অথবা minWidth এবং minHeight-এর মাধ্যমে অ্যাপ উইজেট প্রদানকারীর তথ্য ফাইলে নির্দিষ্ট করা হয়।

এটি ঘটে কারণ Android, ডিফল্টভাবে, শুধুমাত্র উইজেটের ন্যূনতম আকারে দৃশ্যমান কম্পোজেবল রেন্ডার করে। অন্যভাবে বলতে গেলে, Android ডিফল্ট হিসেবে previewSizeMode-কে SizeMode.Single-এ সেট করে। কোন কম্পোজেবল আঁকতে হবে তা নির্ধারণ করতে এটি অ্যাপ উইজেট প্রদানকারীর তথ্য XML-এ android:minHeight এবং android:minWidth ব্যবহার করে।

এই সমস্যার সমাধান করতে, আপনার GlanceAppWidget-এ previewSizeMode ওভাররাইড করুন এবং DpSize ভ্যালুর সেট প্রদান করে এটি SizeMode.Responsive-এ সেট করুন। এটি Android-কে প্রিভিউয়ের জন্য প্রয়োজনীয় সব লেআউট সাইজ সম্পর্কে জানায়, যা সব এলিমেন্ট সঠিকভাবে দেখানো নিশ্চিত করে।

নির্দিষ্ট ফর্ম ফ্যাক্টরের জন্য অপ্টিমাইজ করুন। ন্যূনতম থেকে শুরু করে এবং আপনার উইজেটের ব্রেকপয়েন্ট অনুসরণ করে এক বা দুটি সাইজ প্রদান করুন। Android-এর পুরনো ভার্সনে কাজ করার জন্য কমপক্ষে একটি previewImage উল্লেখ করুন। আপনি উইজেট ডিজাইন সংক্রান্ত নির্দেশিকা থেকে বিভিন্ন গ্রিড সাইজের জন্য উপযুক্ত সর্বনিম্ন DP ভ্যালু খুঁজে পাবেন।

Android-এর পুরনো ভার্সনে কাজ করে

Android 14 ও তার আগের যেকোনও ভার্সনে চলা ডিভাইসে উইজেট প্রিভিউ দেখাতে, অথবা Android 15 ও তার পরের যেকোনও ভার্সনে তৈরি করা প্রিভিউ উপলভ্য না থাকলে, previewImage অ্যাট্রিবিউট নির্দিষ্ট করুন।

আপনি উইজেটের চেহারা পরিবর্তন করলে, প্রিভিউ ছবি আপডেট করুন।