अगर मैं एक प्रसारण रिसीवर इस तरह मेरी गतिविधि में कहते हैं कि रजिस्टर,एंड्रॉइड: गैर-प्रकट प्रसारण रिसीवर निर्यात किए गए हैं?
@Override
protected void onResume() {
super.onResume();
myReceiver = new BroadcastReceiver() { ... };
IntentFilter filter = new IntentFilter("com.example.MY_ACTION");
registerReceiver(myReceiver, filter);
}
इस रिसीवर निर्यात किया जाता है? यदि कोई अन्य ऐप com.example.MY_ACTION
प्रसारित करता है, तो इसे myReceiver
द्वारा प्राप्त किया जाएगा?
यदि यह है, तो मुझे लगता है कि मुझे registerReceiver()
के रूप में उपयोग करने की आवश्यकता है जो एक स्ट्रिंग अनुमति स्वीकार करता है, और फिर मेरे मैनिफेस्ट में उस अनुमति को परिभाषित करता है, जिससे इसे उच्च सुरक्षा स्तर (जैसे हस्ताक्षर) दिया जाता है। क्या वो सही है? क्या कोई आसान तरीका है?
धन्यवाद।
वे निर्यात किए जाते हैं। सुरक्षा के तरीकों के लिए, इसे जांचें: http://stackoverflow.com/questions/9528608/restricting-android-broadcast-receiver-from-specific-app – Kaediil
वह पोस्ट मैनिफेस्ट-पंजीकृत रिसीवर के बारे में है। मैं विशेष रूप से प्रोग्रामेटिक रूप से पंजीकृत रिसीवर के बारे में पूछ रहा हूं। –
कोई फर्क नहीं पड़ता। एक बार आपका ऐप चल रहा है और आप रिसीवर शुरू करते हैं तो कोई भी आपको इरादे भेज सकता है। – Kaediil