2010-08-13 8 views
8

मेरे पास एक ऐसी सेवा है जो दोनों एक फ़ाइल डाउनलोड करती है और इसे सहेजती है, और ऐसा लगता है कि मैं केवल एक अनुमति निर्दिष्ट कर सकता हूं।क्या एंड्रॉइड सेवा में कई अनुमतियां हो सकती हैं?

<service android:enabled="true" 
      android:name=".DownloadService" android:permission="android.permission.INTERNET">    
</service> 

या

<service android:enabled="true" 
      android:name=".DownloadService" android:permission="android.permission.WRITE_EXTERNAL_STORAGE">    
</service> 

मैं दोनों की जरूरत है।

उत्तर

19

एक एंड्रॉइड Service में कई अनुमतियां हो सकती हैं, लेकिन आवेदन स्तर पर अनुमतियां Service स्तर पर नहीं दी गई हैं।

आपकी समस्या यह है कि आप AndroidManifest.xml फ़ाइल में गलत स्थान पर अपने Service पर अनुमति देने का प्रयास कर रहे हैं।

android:permission attribute of a ServiceService को दी गई अनुमति के लिए, किसी इकाई को सेवा का उपयोग करने की अनुमति निर्दिष्ट नहीं करती है।

आप grant permissions to all components your application अपने AndroidManifest.xml के शीर्ष स्तर पर:

<manifest 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.yourdomain.yourapp" > 

    <uses-permission android:name="android.permission.INTERNET" /> 
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 

</manifest> 
+1

कैसे एक serice एक अनुमति की तुलना में अधिक हो सकती है? – hariszaman

+6

क्या होगा यदि आपको यह निर्दिष्ट करने की आवश्यकता है कि किसी इकाई के पास सेवा का उपयोग करने के लिए एक से अधिक अनुमति है? – zundi

संबंधित मुद्दे