मैंने एक ऐसी सेवा बनाई जो AIDL के माध्यम से अन्य अनुप्रयोगों से बंधी है, और मैं इसे इस प्रकार प्रकट करता हूं:
<service android:name=".MyService">
<intent-filter>
<action android:name="org.example.android.myservicedemo.IService" />
</intent-filter>
</service>
जहां IService AIDL इंटरफ़ेस है।
इस तरह, ग्रहण मुझे चेतावनी दिखाता है कि निर्यात की गई सेवा को अनुमति की आवश्यकता नहीं है । यदि मैं हटाता हूं intent-filter
, तो चेतावनी गायब हो जाती है, लेकिन जाहिर है कि एप्लिकेशन सेवा से बंधने में असमर्थ हैं।
इस चेतावनी का क्या मतलब है?
android:permission
अपने <service>
घोषणा की विशेषता के रूप में उस के नाम का उपयोग करें । या सिर्फ चेतावनी को अनदेखा करें - सेवा करने का इरादा क्या है? आप सेवा "आंतरिक" रखने के साथ ठीक लगे, तो यह बहुत आसान है बस सेट करने के लिए android:exported="false"
पर अपने<service>
Service
और जो भी विधि वे चाहते हैं उसे कॉल करें जो आपके एआईडीएल इंटरफेस के माध्यम से उजागर होती है।