ডিভাইসের ব্যাটারি লাইফ উন্নত করতে, অ্যান্ড্রয়েড ডিভাইসের ব্যবহার এবং জাগ্রততা পর্যবেক্ষণ করে ডিভাইসের অবস্থাকে প্রভাবিত করতে পারে। ডিভাইসটি অব্যবহৃত থাকা অবস্থায় প্ল্যাটফর্মটি চলমান থেকে ক্রিয়াকলাপ বন্ধ করতে ঘুমের অবস্থায় প্রবেশ করতে পারে।
ডোজ সম্পর্কে
একটি ডিভাইস দীর্ঘ সময়ের জন্য অব্যবহৃত থাকলে ডোজ অ্যাপের ব্যাকগ্রাউন্ড সিপিইউ এবং নেটওয়ার্ক অ্যাক্টিভিটি স্থগিত করে ব্যাটারির আয়ু বাড়ায়।
Doze-এ নিষ্ক্রিয় ডিভাইসগুলি পর্যায়ক্রমে একটি রক্ষণাবেক্ষণ উইন্ডোতে প্রবেশ করে, এই সময়ে অ্যাপগুলি মুলতুবি কাজ (সিঙ্ক, কাজ, ইত্যাদি) সম্পূর্ণ করতে পারে। Doze তারপর একটি দীর্ঘ সময়ের জন্য ঘুম পুনরায় শুরু, আরেকটি রক্ষণাবেক্ষণ উইন্ডো অনুসরণ করে। প্ল্যাটফর্মটি ডোজ স্লিপ/রক্ষণাবেক্ষণের ক্রমটি অব্যাহত রাখে, প্রতিবার নিষ্ক্রিয়তার দৈর্ঘ্য বৃদ্ধি করে, যতক্ষণ না সর্বোচ্চ কয়েক ঘন্টা ঘুমের সময় পৌঁছে যায়। সর্বদা, ডোজে থাকা একটি ডিভাইস গতি সম্পর্কে সচেতন থাকে এবং গতি সনাক্ত করা হলে অবিলম্বে ডোজ ছেড়ে যায়।
অ্যান্ড্রয়েড 7.0 এবং উচ্চতর অপ্টিমাইজেশানের একটি হালকা সেট ট্রিগার করতে Doze প্রসারিত করে প্রতিবার যখন কোনও ব্যবহারকারী ডিভাইসের স্ক্রীন বন্ধ করে দেয়, এমনকি ব্যবহারকারী যখন ঘুরে বেড়াতে থাকে তখনও দীর্ঘস্থায়ী ব্যাটারি লাইফ সক্ষম করে।
ক্রিটিক্যাল সিস্টেম পরিষেবাগুলি সাধারণত ডিভাইস নির্মাতাদের দ্বারা সেট আপ করা হয় যাতে Doze থেকে অব্যাহতি দেওয়া যায়। ব্যবহারকারীরা সেটিংস মেনু ব্যবহার করে ডোজ থেকে নির্দিষ্ট অ্যাপগুলিকেও ছাড় দিতে পারেন। যাইহোক, অ্যাপগুলিকে ছাড় দেওয়ার ফলে ডিভাইসে ব্যাটারি ড্রেন হতে পারে। ডিফল্টরূপে, AOSP-তে Doze অক্ষম করা হয়; Doze সক্ষম করার বিষয়ে বিস্তারিত জানার জন্য, Doze ইন্টিগ্রেটিং দেখুন।
ডোজ প্রয়োজনীয়তা
Doze সমর্থনের জন্য ডিভাইসটিতে একটি ক্লাউড মেসেজিং পরিষেবা থাকা প্রয়োজন, যেমন Firebase ক্লাউড মেসেজিং (FCM) ৷ ক্লাউড বার্তাগুলির মতো বাহ্যিক ট্রিগার ইভেন্টগুলি ডিভাইসটি ডোজ মোডে থাকাকালীন কাজ করার জন্য অ্যাপগুলিকে সাময়িকভাবে জাগিয়ে তুলতে পারে।
সম্পূর্ণ ডোজ সমর্থনের জন্য ডিভাইসে একটি উল্লেখযোগ্য মোশন ডিটেক্টর (এসএমডি) প্রয়োজন; যাইহোক, অ্যান্ড্রয়েড 7.0 এবং উচ্চতর সংস্করণে লাইটওয়েট ডোজ মোডের জন্য SMD প্রয়োজন হয় না। যদি কোনো ডিভাইসে Doze সক্ষম করা থাকে যা:
- একটি SMD আছে, সম্পূর্ণ ডোজ অপ্টিমাইজেশান ঘটবে (হালকা অপ্টিমাইজেশন সহ)।
- একটি SMD নেই, শুধুমাত্র লাইটওয়েট Doze অপ্টিমাইজেশান ঘটতে.
ডোজ জীবনচক্র
ডোজ শুরু হয় যখন প্ল্যাটফর্ম শনাক্ত করে যে ডিভাইসটি নিষ্ক্রিয় আছে এবং এক বা একাধিক প্রস্থান মাপদণ্ডের কার্যকলাপ ঘটলে শেষ হয়।
প্ল্যাটফর্ম সনাক্ত করে যে একটি ডিভাইস নিষ্ক্রিয় থাকে যখন:
- ডিভাইস স্থির (SMD ব্যবহার করে)।
- ডিভাইসের স্ক্রীন কিছু সময়ের জন্য বন্ধ আছে।
যখন একটি ব্যাটারি চালিত ডিভাইস পাওয়ার চার্জারে প্লাগ করা থাকে তখন ডোজ মোড কাজ করে না।
ডোজের সময়
প্ল্যাটফর্মটি সিস্টেমটিকে একটি ঘুমের অবস্থায় রাখার চেষ্টা করে, পর্যায়ক্রমে একটি রক্ষণাবেক্ষণ উইন্ডোর সময় স্বাভাবিক ক্রিয়াকলাপ পুনরায় শুরু করে এবং তারপরে দীর্ঘ পুনরাবৃত্তি সময়ের জন্য ডিভাইসটিকে ঘুমাতে ফিরিয়ে দেয়। ঘুমের সময়, নিম্নলিখিত বিধিনিষেধগুলি সক্রিয় থাকে:
- অ্যাপ্লিকেশানগুলিকে নেটওয়ার্ক অ্যাক্সেসের অনুমতি দেওয়া হয় না৷
- অ্যাপ ওয়াকলক উপেক্ষা করা হয়েছে।
- অ্যালার্ম স্থগিত করা হয়।
setAndAllowWhileIdle()
ব্যবহার করে অ্যালার্ম ঘড়ির অ্যালার্ম এবং অ্যালার্ম সেট বাদ দেয় (ডোজে থাকাকালীন প্রতি অ্যাপ প্রতি 15 মিনিটে 1 সীমিত)। এই ছাড়টি এমন অ্যাপগুলির জন্য (যেমন ক্যালেন্ডার) যা ইভেন্ট অনুস্মারক বিজ্ঞপ্তিগুলি দেখাতে হবে৷ - ওয়াই-ফাই স্ক্যান করা হয় না।
-
SyncAdapter
সিঙ্ক এবংJobScheduler
কাজগুলি পরবর্তী রক্ষণাবেক্ষণ উইন্ডো পর্যন্ত স্থগিত করা হয়েছে। - এসএমএস এবং এমএমএস বার্তা গ্রহণকারী অ্যাপগুলিকে একটি অস্থায়ী সাদা তালিকায় রাখা হয় যাতে তারা তাদের প্রক্রিয়াকরণ সম্পূর্ণ করতে পারে।
প্রস্থান করুন
প্ল্যাটফর্মটি ডোজ থেকে ডিভাইসটি প্রস্থান করে যখন এটি সনাক্ত করে:
- ডিভাইসের সাথে ব্যবহারকারীর মিথস্ক্রিয়া
- ডিভাইস আন্দোলন
- ডিভাইসের স্ক্রিন চালু হয়
- আসন্ন অ্যালার্মক্লক অ্যালার্ম
বিজ্ঞপ্তিগুলি ডিভাইসটিকে Doze থেকে প্রস্থান করতে দেয় না৷
অ্যান্ড্রয়েড 7.0 এবং উচ্চতর ডিভাইসটি নিষ্ক্রিয় হওয়ার আগে, স্ক্রীন বন্ধের সময় একটি হালকা স্লিপ মোড সক্ষম করে Doze প্রসারিত করে৷
চিত্র 1. ননস্টেশনারি এবং স্থির ডিভাইসের জন্য ডোজ মোড।
অ্যাকশন | ডোজ | লাইটওয়েট ডোজ |
---|---|---|
ট্রিগার | স্ক্রীন বন্ধ, ব্যাটারিতে, স্থির | স্ক্রীন বন্ধ, ব্যাটারিতে (আনপ্লাগড) |
টাইমিং | রক্ষণাবেক্ষণের সাথে পর্যায়ক্রমিকভাবে বৃদ্ধি | রক্ষণাবেক্ষণ উইন্ডো সহ বারবার N-মিনিট সময়কাল |
বিধিনিষেধ | কোনো নেটওয়ার্ক অ্যাক্সেস, ওয়েক লক, বা GPS/Wi-Fi স্ক্যান নেই; অ্যালার্ম এবং কাজ/সিঙ্ক স্থগিত | নেটওয়ার্ক অ্যাক্সেস নেই; রক্ষণাবেক্ষণ উইন্ডোর সময় ছাড়া কাজ/সিঙ্ক স্থগিত |
আচরণ | শুধুমাত্র উচ্চ অগ্রাধিকার পুশ বিজ্ঞপ্তি বার্তা প্রাপ্ত | সমস্ত রিয়েল-টাইম বার্তা (তাত্ক্ষণিক বার্তা, কল, ইত্যাদি) প্রাপ্ত; উচ্চ-প্রধান পুশ বিজ্ঞপ্তি বার্তা অস্থায়ী নেটওয়ার্ক অ্যাক্সেস সক্ষম করে |
প্রস্থান করুন | মোশন, স্ক্রিন অন, বা অ্যালার্ম ঘড়ির অ্যালার্ম | স্ক্রীন অন |
অ্যাপ স্ট্যান্ডবাই এর সাথে মিথস্ক্রিয়া
- ডোজে কাটানো সময় অ্যাপ স্ট্যান্ডবাইতে গণনা করা হয় না।
- ডিভাইসটি Doze এ থাকাকালীন, নিষ্ক্রিয় অ্যাপগুলিকে দিনে অন্তত একবার স্বাভাবিক ক্রিয়াকলাপ করার অনুমতি দেওয়া হয়।
ইন্টিগ্রেট Doze
যখন Doze সক্ষম করা হয়, যে ডিভাইসগুলি SENSOR_TYPE_SIGNIFICANT_MOTION
সমর্থন করে সেগুলি সম্পূর্ণ ডোজ অপ্টিমাইজেশান (হালকা অপ্টিমাইজেশান সহ); একটি SMD ছাড়া ডিভাইস শুধুমাত্র লাইটওয়েট Doze অপ্টিমাইজেশান সঞ্চালন. অ্যান্ড্রয়েড স্বয়ংক্রিয়ভাবে উপযুক্ত ডোজ অপ্টিমাইজেশন নির্বাচন করে এবং বিক্রেতা কনফিগারেশন প্রয়োজন হয় না।
একটি ডিভাইসের জন্য Doze সক্ষম করতে:
- নিশ্চিত করুন যে ডিভাইসটিতে একটি ক্লাউড মেসেজিং পরিষেবা ইনস্টল করা আছে৷
- ডিভাইসের ওভারলে কনফিগারেশন ফাইলে
overlay/frameworks/base/core/res/res/values/config.xml
,config_enableAutoPowerModes
true
সেট করুন: AOSP-এ, এই প্যারামিটারটি ডিফল্টরূপে<bool name="config_enableAutoPowerModes">true</bool>
false
(Doze নিষ্ক্রিয়) সেট করা আছে। - প্রিলোড করা অ্যাপ এবং পরিষেবা নিশ্চিত করুন:
- পাওয়ার-সেভিং অপ্টিমাইজেশান নির্দেশিকা ব্যবহার করুন। বিশদ বিবরণের জন্য, অ্যাপগুলি পরীক্ষা করা এবং অপ্টিমাইজ করা দেখুন৷
বা
- Doze এবং অ্যাপ স্ট্যান্ডবাই থেকে অব্যাহতি দেওয়া হয়েছে। বিশদ বিবরণের জন্য, ছাড় দেওয়া অ্যাপগুলি দেখুন।
- পাওয়ার-সেভিং অপ্টিমাইজেশান নির্দেশিকা ব্যবহার করুন। বিশদ বিবরণের জন্য, অ্যাপগুলি পরীক্ষা করা এবং অপ্টিমাইজ করা দেখুন৷
- নিশ্চিত করুন যে প্রয়োজনীয় পরিষেবাগুলি Doze থেকে অব্যাহতিপ্রাপ্ত।
টিপস
- যদি সম্ভব হয়, ডাউনস্ট্রিম মেসেজিংয়ের জন্য FCM ব্যবহার করুন।
- যদি আপনার ব্যবহারকারীদের অবিলম্বে একটি বিজ্ঞপ্তি দেখতে হয়, একটি FCM উচ্চ-প্রধান বার্তা ব্যবহার করুন৷
- প্রাথমিক বার্তা পেলোডের মধ্যে পর্যাপ্ত তথ্য প্রদান করুন (অপ্রয়োজনীয় পরবর্তী নেটওয়ার্ক অ্যাক্সেস এড়াতে)।
-
setAndAllowWhileIdle()
এবংsetExactAndAllowWhileIdle()
দিয়ে সমালোচনামূলক অ্যালার্ম সেট করুন।
পরীক্ষা করুন এবং অ্যাপগুলি অপ্টিমাইজ করুন
ডোজ মোডে সমস্ত অ্যাপ (বিশেষ করে প্রিলোড করা অ্যাপ) পরীক্ষা করুন। বিস্তারিত জানার জন্য, ডোজ এবং অ্যাপ স্ট্যান্ডবাই দিয়ে টেস্টিং দেখুন।