নির্দিষ্ট কিছু অ্যাপের স্ক্রিন চালু রাখতে হবে, যেমন গেম বা সিনেমা অ্যাপ। কিছু Android API স্বয়ংক্রিয়ভাবে আপনার জন্য স্ক্রীন চালু রাখে। অন্য ক্ষেত্রে, আপনি স্ক্রীনটি ম্যানুয়ালি চালু রাখতে একটি পতাকা সেট করতে পারেন।
এপিআই যা স্ক্রীন চালু রাখে
কিছু Android API স্বয়ংক্রিয়ভাবে আপনার জন্য স্ক্রীন চালু রাখে। আপনি যদি এই APIগুলির মধ্যে একটি ব্যবহার করেন তবে আপনাকে ম্যানুয়ালি পর্দার অবস্থা নিয়ন্ত্রণ করতে হবে না।
এটি এপিআইগুলির একটি আংশিক তালিকা যা স্ক্রীন চালু রাখে:
- টেলিকম লাইব্রেরি কল চলাকালীন স্বয়ংক্রিয়ভাবে স্ক্রিন চালু রাখে।
ম্যানুয়ালি স্ক্রিন অন রাখুন
ডিভাইসের স্ক্রীন চালু রাখতে, আপনার কার্যকলাপে FLAG_KEEP_SCREEN_ON
পতাকা সেট করুন। এই পতাকাটি শুধুমাত্র একটি ক্রিয়াকলাপে সেট করা হতে পারে, কোনো পরিষেবা বা অন্য অ্যাপ উপাদানে নয়৷ যেমন:
কোটলিন
class MainActivity : Activity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON) } }
জাভা
public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); } }
স্ক্রীন চালু রাখার আরেকটি উপায় হল আপনার অ্যাপ্লিকেশনের লেআউট XML ফাইলে android:keepScreenOn
অ্যাট্রিবিউট সেট করা:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:keepScreenOn="true"> ... </RelativeLayout>
android:keepScreenOn="true"
ব্যবহার করা FLAG_KEEP_SCREEN_ON
ব্যবহার করার সমতুল্য৷ আপনি আপনার অ্যাপের জন্য সর্বোত্তম যে কোনও পদ্ধতি ব্যবহার করতে পারেন। আপনার ক্রিয়াকলাপে প্রোগ্রাম্যাটিকভাবে পতাকা সেট করার সুবিধা হল এটি আপনাকে প্রোগ্রাম্যাটিকভাবে পতাকাটি পরে সাফ করার বিকল্প দেয় এবং এর ফলে স্ক্রিনটি বন্ধ করার অনুমতি দেয়।
যদি FLAG_KEEP_SCREEN_ON
পতাকা সহ একটি অ্যাপ ব্যাকগ্রাউন্ডে যায়, সিস্টেমটি স্ক্রীনটিকে স্বাভাবিকভাবে বন্ধ করার অনুমতি দেয়। এই ক্ষেত্রে আপনাকে স্পষ্টভাবে পতাকা সাফ করার দরকার নেই। যদি আপনার অ্যাপটিকে আর স্ক্রীন চালু রাখার প্রয়োজন না হয়, তাহলে আপনার পতাকাটি সাফ করা উচিত। clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)
কল করে।
টিভির জন্য অ্যাম্বিয়েন্ট মোড
টিভি ডিভাইসে, সক্রিয় ভিডিও প্লেব্যাকের সময় ডিভাইসটিকে অ্যাম্বিয়েন্ট মোডে যেতে বাধা দিতে FLAG_KEEP_SCREEN_ON
ব্যবহার করুন। যদি ফোরগ্রাউন্ড অ্যাক্টিভিটি FLAG_KEEP_SCREEN_ON
সেট না করে, ডিভাইসটি স্বয়ংক্রিয়ভাবে নিষ্ক্রিয়তার পর অ্যাম্বিয়েন্ট মোডে প্রবেশ করে।