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

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

এই নির্দেশিকায় গ্ল্যান্স-ভিত্তিক উইজেটগুলির জন্য কীভাবে প্রিভিউ প্রদান করতে হয় তা আলোচনা করা হয়েছে। যদি আপনার উইজেটটি RemoteViews দিয়ে তৈরি করা হয়ে থাকে, তাহলে আপনার উইজেট পিকার-এ প্রিভিউ যোগ করুন (Add previews to your widget picker) অংশটি দেখুন।

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

আরও তথ্যের জন্য, ইউটিউবে ‘লাইভ আপডেট এবং উইজেট দিয়ে আপনার অ্যাপকে সমৃদ্ধ করুন’ দেখুন।

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

অ্যান্ড্রয়েড ১৫ বা তার উচ্চতর সংস্করণের ডিভাইসে তৈরি করা উইজেটের প্রিভিউ দেখানোর জন্য, প্রথমে মডিউলের build.gradle ফাইলে compileSdk এর মান ৩৫ বা তার বেশি সেট করুন, যাতে উইজেট পিকার-এ তৈরি করা প্রিভিউগুলো সক্রিয় হয়।

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

Jetpack Glance দিয়ে আপডেট করা প্রিভিউ তৈরি করুন

Jetpack Glance দিয়ে তৈরি উইজেটগুলোর জন্য, নিম্নলিখিত পদক্ষেপগুলো অনুসরণ করুন:

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

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

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

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

তৈরি হওয়া প্রিভিউগুলির সমস্যা সমাধান করুন

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

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

এটি ঠিক করতে, আপনার GlanceAppWidgetpreviewSizeMode ওভাররাইড করুন এবং এটিকে SizeMode.Responsive এ সেট করুন, সাথে কিছু DpSize ভ্যালু দিন। এটি অ্যান্ড্রয়েডকে জানিয়ে দেয় যে প্রিভিউয়ের জন্য কোন কোন লেআউট সাইজ রেন্ডার করতে হবে, যা নিশ্চিত করে যে সমস্ত এলিমেন্ট সঠিকভাবে প্রদর্শিত হবে।

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

নিম্নতর অ্যান্ড্রয়েড সংস্করণ সমর্থন করে

অ্যান্ড্রয়েড ১৪ ও তার নিচের সংস্করণের ডিভাইসগুলিতে উইজেট প্রিভিউ দেখানোর জন্য, অথবা অ্যান্ড্রয়েড ১৫ ও তার উপরের সংস্করণে যখন কোনো জেনারেটেড প্রিভিউ পাওয়া যায় না, তখন previewImage অ্যাট্রিবিউটটি নির্দিষ্ট করুন।

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