হার্ডওয়্যার ত্বরণের সাথে আপনার ঘড়ির মুখের কার্যক্ষমতা উন্নত করুন

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

কেন আপনার ঘড়ির মুখের জন্য একটি হার্ডওয়্যার-ত্বরিত ক্যানভাস ব্যবহার করবেন?

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

আপনি যখন একটি হার্ডওয়্যার-অ্যাক্সিলারেটেড ক্যানভাস ব্যবহার করেন, তখন আপনি আপনার ঘড়ির মুখ সম্পর্কে আরও UI কর্মক্ষমতা ডেটা অ্যাক্সেস করতে পারেন। উদাহরণস্বরূপ, আপনি যখন একটি হার্ডওয়্যার-অ্যাক্সিলারেটেড ক্যানভাস ব্যবহার করছেন তখনই মেজার UI কর্মক্ষমতা -তে বর্ণিত বিশদ ফ্রেম তথ্য অ্যাক্সেস করতে পারবেন।

আমার ঘড়ির মুখ কি হার্ডওয়্যার ত্বরণ ব্যবহার করছে?

আপনি বিকাশকারী বিকল্প বা adb ব্যবহার করে আপনার ঘড়ির মুখ হার্ডওয়্যার ত্বরণ ব্যবহার করছে কিনা তা পরীক্ষা করতে পারেন।

বিকাশকারী বিকল্পগুলি ব্যবহার করে পরীক্ষা করুন

আপনার ঘড়ির মুখ হার্ডওয়্যার ত্বরণ ব্যবহার করছে কিনা তা পরীক্ষা করতে বিকাশকারী বিকল্পগুলি ব্যবহার করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. একটি Wear OS ডিভাইসে, সেটিংস > বিকাশকারী বিকল্পগুলিতে নেভিগেট করুন।
  2. ডিবাগ GPU প্রোফাইলিং সক্ষম করুন৷

    এই বিকল্পটি দৃশ্যমান সারফেসগুলির উপরে একটি ওভারলে আঁকে, প্রতিটি পৃষ্ঠায় একটি, সেই পৃষ্ঠের জন্য GPU রেন্ডারিংয়ের প্রতিটি পর্যায়ে ব্যয় করা সময়ের পরিমাণ দেখাতে।

  3. ডিভাইসে, আপনার ঘড়ির মুখে ফিরে যান।

  4. যদি আপনার ঘড়ির মুখ একটি হার্ডওয়্যার-অ্যাক্সিলারেটেড ক্যানভাস ব্যবহার করে, তাহলে আপনি একটি নতুন বার দেখতে পাবেন যা আপনার ঘড়ির মুখের প্রতিটি রেন্ডার করা ফ্রেমের জন্য ডান থেকে বামে চলে যায়।

adb ব্যবহার করে পরীক্ষা করুন

আপনার ঘড়ির মুখ হার্ডওয়্যার ত্বরণ ব্যবহার করছে কিনা তা পরীক্ষা করতে adb ব্যবহার করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. একটি Wear OS ডিভাইসে, ঘড়ির মুখটি আপনার ঘড়ির মুখে পরিবর্তন করুন যা আপনি পরীক্ষা করতে চান।
  2. ইন্টারেক্টিভ মোডে কয়েক সেকেন্ডের জন্য ঘড়ির মুখটি চলতে দিন।
  3. আপনার ঘড়ির মুখ হার্ডওয়্যার ত্বরণ ব্যবহার করছে কিনা তা পরীক্ষা করতে নিম্নলিখিত adb কমান্ডটি চালান:

    adb shell dumpsys gfxinfo [package-name]

কমান্ড চালানোর পরে, আপনি নিম্নলিখিত উদাহরণের অনুরূপ আউটপুট পাবেন:

Applications Graphics Acceleration Info:
Uptime: 2239933 Realtime: 13568751

** Graphics info for pid 1100 [package-name] **

Stats since: 59875589194ns
Total frames rendered: 1213
Janky frames: 0 (0.00%)
50th percentile: 7ms
90th percentile: 18ms
95th percentile: 25ms
99th percentile: 150ms
Number Missed Vsync: 0
Number High input latency: 0
Number Slow UI thread: 0
Number Slow bitmap uploads: 0
Number Slow issue draw commands: 0
Number Frame deadline missed: 0

...

এই নমুনা আউটপুটে, Total frames rendered পড়ার লাইনটি লক্ষ্য করুন। সাধারণত, যদি আপনার আউটপুট 0-এর বেশি রেন্ডার করা মোট ফ্রেম দেখায়, তাহলে আপনার ঘড়ির মুখ একটি ত্বরিত ক্যানভাস ব্যবহার করে। অন্যথায় রিপোর্টে রেন্ডার করা মোট ফ্রেম এবং অন্যান্য ফ্রেম ডেটা সাধারণত 0 হয়।

যাইহোক, যেহেতু gfxinfo আপনার অ্যাপের সম্পূর্ণ প্যাকেজের জন্য আউটপুট, আপনি হার্ডওয়্যার-অ্যাক্সিলারেটেড ক্যানভাস ছাড়া অন্য কিছু থেকে কিছু ফ্রেম টাইম তথ্য দেখতে পারেন, যেমন আপনার অ্যাপ কনফিগারেশন স্ক্রিনের জন্য ব্যবহার করে এমন একটি Activity । পার্থক্য জানাতে, নিশ্চিত করুন যে আপনার ঘড়ির মুখটি দৃশ্যমান একমাত্র পৃষ্ঠ এবং তারপরে Total frames rendered মান বাড়ে কিনা তা পরীক্ষা করতে adb shell dumpsys gfxinfo কমান্ডটি পুনরায় চালান।

সর্বোত্তম অনুশীলন

আপনার ব্যবহারকারীদের জন্য সম্ভাব্য সর্বোত্তম অভিজ্ঞতা নিশ্চিত করতে এই সেরা অনুশীলনগুলি অনুসরণ করুন৷

ব্যাটারির আয়ু সর্বোচ্চ করুন

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

সমর্থিত অঙ্কন অপারেশন ব্যবহার করুন

হার্ডওয়্যার ত্বরণ ব্যবহার করার সময় কিছু অঙ্কন অপারেশন সমর্থিত নয়। কি সমর্থিত তার তথ্যের জন্য, হার্ডওয়্যার ত্বরণ দেখুন। আপনার যদি একটি ছোট কোড পাথ থাকে যা একটি অসমর্থিত অপারেশন ব্যবহার করে, আপনি একটি বিটম্যাপ-ব্যাকড ক্যানভাস তৈরি করতে পারেন এবং তারপর canvas.drawBitmap() ব্যবহার করে ঘড়ির মুখের ক্যানভাসে সেই বিটম্যাপটি আঁকতে পারেন।

হার্ডওয়্যার ত্বরণ ব্যবহার করার সময় সামঞ্জস্য বজায় রাখুন

Android 9 (API লেভেল 28) বা উচ্চতর চালিত Wear OS ডিভাইসগুলিতে হার্ডওয়্যার ত্বরণ উপলব্ধ। আপনি যদি পুরানো ডিভাইসগুলিতে একটি নির্দিষ্ট ড্র অপারেশন এড়াতে চান, যেখানে হার্ডওয়্যার ত্বরণ উপলব্ধ নয়, বা একটি হার্ডওয়্যার ত্বরিত ক্যানভাসে অসমর্থিত ড্র অপারেশন, আপনি Canvas.isHardwareAccelerated() চেক করতে পারেন, তারপর বিকল্প কার্যকারিতা প্রদান করুন৷

{% শব্দার্থে %} {% endverbatim %} {% শব্দার্থে %} {% endverbatim %}