दिलचस्प पोस्ट
अनुक्रमितों का सी ++ सॉर्टिंग और रखे जाने का तरीका त्रुटि: चेतावनी: mysql_num_rows () पैरामीटर 1 को संसाधन होने की उम्मीद है, बूलियन सी में दिया गया है: \ xampp \ htdocs \ … \ … php लाइन 19 पर सीएसएस का प्रयोग: पहले और: छद्म तत्वों के बाद इनलाइन सीएसएस के साथ? कुशलता से दो तिथियों के बीच समय और तिथियों का यादृच्छिक नमूना उत्पन्न करता है Android में कॉलबैक को कैसे परिभाषित करें? बाल नोड सूचकांक प्राप्त करें मेथमैटिका में रनटाइम त्रुटियों के हिमस्खलन को रोकना पायथन 3 में execfile के लिए एक विकल्प क्या है? ES6 Promise.all () त्रुटि संभाल – है। सेटअप () की आवश्यकता है? उसी लाइन पर नए आउटपुट प्रिंट करें मैं CSS या पाठ का उपयोग कैसे कर सकता हूँ? क्या कोई एपीआई है कि फेसबुक को एक पृष्ठ फिर से स्क्रैप करने के लिए मजबूर किया जाए? लोडसेंनी / लोड लेवल को कॉल करने के बाद दृश्य में ऑब्जेक्ट्स एक छवि पर सिक्कों की पहचान (और लंगोट फिट) मैं एक डाटा डाटाबेस को MySQL डाटाबेस में कैसे सम्मिलित कर सकता हूं?

एंड्रॉइड: स्क्रीन के लिए प्रसारण रिसीवर और स्क्रीन बंद

मैं बस सोच रहा था कि क्या किसी प्रसारण रिसीवर को पंजीकृत करना संभव है जो कि एप्लिकेशन मैनिफेस्ट में स्क्रीन चालू / बंद का पता लगाता है। मुझे प्रोग्राम योग्य विधि पसंद नहीं है, इसलिए यह है कि ऐप को ऐसी चीज़ों का पता लगाने के लिए चलना पड़ता है, जबकि: "मैनिफेस्ट में पंजीकृत ब्रॉडकास्ट रिसीवर्स के साथ एप्लिकेशन को चलना पड़ता है जब इंटेंट है रिसीवर्स को निष्पादित करने के लिए प्रसारण "(स्रोत: प्रोफेशनल एंड्रॉइड 2 एप्लिकेशन डेवलपमेंट बुक)

मेरा ऐप वास्तव में एक लॉकस्क्रीन ऐप है जो प्रोग्राम योग्य तरीके से हर समय चलने की जरूरत है: एस

क्या इसके आसपास कोई रास्ता है?

मैं निम्नलिखित में कोशिश कर रहा हूं:

<receiver android:name=".MyBroadCastReciever"> <intent-filter> <action android:name="android.intent.action.SCREEN_OFF"/> <action android:name="android.intent.action.SCREEN_ON"/> </intent-filter> </receiver> 

और सरल MyBroadCastReciever वर्ग:

 public class MyBroadCastReciever extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { if (intent.getAction().equals(Intent.ACTION_SCREEN_OFF)) { Log.i("Check","Screen went OFF"); Toast.makeText(context, "screen OFF",Toast.LENGTH_LONG).show(); } else if (intent.getAction().equals(Intent.ACTION_SCREEN_ON)) { Log.i("Check","Screen went ON"); Toast.makeText(context, "screen ON",Toast.LENGTH_LONG).show(); } } } 

वेब के समाधान से एकत्रित समाधान "एंड्रॉइड: स्क्रीन के लिए प्रसारण रिसीवर और स्क्रीन बंद"

स्क्रीन के लिए दो क्रियाएं चालू और बंद हैं:

 android.intent.action.SCREEN_OFF android.intent.action.SCREEN_ON 

लेकिन अगर आप किसी मैनिफेस्ट में इन ब्रॉडकास्ट के लिए एक रिसीवर पंजीकृत करते हैं, तो रिसीवर इन ब्रॉडकास्ट को प्राप्त नहीं करेगा।

इस समस्या के लिए, आपको एक लंबे समय से चलने वाली सेवा बनाना होगा, जो इन इन्टेंट्स के लिए एक स्थानीय प्रसारण रिसीवर पंजीकृत कर रहा है। यदि आप ऐसा करते हैं, तो आपका ऐप स्क्रीन के लिए केवल तब दिखता है जब आपकी सेवा चल रही है जो उपयोगकर्ता को परेशान नहीं करेगा।

पुनश्च: इसे आगे चलने के लिए अग्रभूमि में सेवा शुरू करना

एक साधारण कोड स्निपेट कुछ ऐसा होगा:

 IntentFilter screenStateFilter = new IntentFilter(); screenStateFilter.addAction(Intent.ACTION_SCREEN_ON); screenStateFilter.addAction(Intent.ACTION_SCREEN_OFF); registerReceiver(mScreenStateReceiver, screenStateFilter); 

सेवा के ऑनस्टोरॉय में रिसीवर को अपंजीकृत करने के लिए मत भूलना:

 unregisterReceiver(mScreenStateReceiver); 

बस उन लोगों के लिए, जो पूछ रहे हैं कि रिसीवर ACTION_SCREEN_ON और ACTION_SCREEN_OFF के लिए प्रकट होने वाले घोषित प्रसारण के साथ काम क्यों नहीं करता है:

https://developer.android.com/reference/android/content/Intent.html#ACTION_SCREEN_ON https://developer.android.com/reference/android/content/Intent.html#ACTION_SCREEN_OFF

आप इसे मैनिफेस्ट्स में घोषित घटकों के माध्यम से प्राप्त नहीं कर सकते हैं, केवल इसके लिए कॉन्टेक्स्ट। रजिस्ट्री रिसीवर () के साथ स्पष्ट रूप से पंजीकरण कर रहे हैं।

यह एक संरक्षित उद्देश्य है जो केवल सिस्टम द्वारा भेजा जा सकता है।

इसके लिए जांच करने के लिए आपको पृष्ठभूमि सेवा बनाने की आवश्यकता है तब आप इसे प्रोग्रामेटिक रूप से सेट कर सकते हैं