2012-05-22 13 views
8

मेरा आवेदन उपयोगकर्ता को वैकल्पिक एसएमएस और फोन कॉल तक पहुंच प्रदान करता है। मैंने उपयोग किया है:एंड्रॉइड अनुमति, आवश्यक = "झूठा", असफल

<uses-permission android:name="android.permission.READ_PHONE_STATE" android:required="false"></uses-permission> 
<uses-permission android:name="android.permission.SEND_SMS" android:required="false"></uses-permission> 
<uses-permission android:name="android.permission.CALL_PHONE" android:required="false"></uses-permission> 

Google Play इस एप्लिकेशन को उन डिवाइसों पर बेनकाब नहीं करता है जिनमें सेलुलर नेटवर्क पहुंच नहीं है। ऐसा लगता है कि आवश्यक = झूठा पैरामीटर अपना काम करने में असफल रहा है।

क्या यह एक बग है? क्या मैं कुछ और कर सकता हूं?

उत्तर

18

आप अनुमति के अंदर आवश्यक पैरामीटर क्यों डाल रहे हैं? एंड्रॉयड: आवश्यक परम, प्रयोग किया जाता है जब आप एक सुविधा की घोषणा afaik ... उदाहरण के लिए:

<uses-feature android:name="android.hardware.sensor.accelerometer" android:required="true" /> 

मुझे लगता है कि तुम क्या android:required="false" साथ uses-feature घोषणाओं जोड़ने है करना चाहता था। http://developer.android.com/guide/topics/manifest/uses-feature-element.html#permissions-features

<uses-feature android:name="android.hardware.telephony" android:required="false" /> 
+0

क्योंकि कुछ उपयोग-featu ress Google play को उपयोग अनुमतियों को उत्पन्न करने का कारण बनता है जो कुछ उपकरणों के लिए फ़िल्टरिंग को प्रभावित करता है। कुछ पर जोर। –

+0

@IncrediApp लिंक साझा करने के लिए धन्यवाद। उस तालिका में अनुमति-सुविधा मैपिंग की सीमित संख्या है। मैनिफेस्ट में अनुमतियों के बारे में क्या है जो आपके लिंक में तालिका में सूचीबद्ध नहीं हैं? – LoveForDroid

4

आप AndroidManifest.xml फ़ाइल में अनुमतियाँ टैब में सभी अनुमतियों को देख सकते हैं: अपने मेनिफ़ेस्ट अपडेट करने

इस तालिका का प्रयोग करें।

0

आप

की परिभाषा को देखने के <uses-permission यह केवल <uses-feature लिए काम करता है में संपत्ति android:required उपयोग करने के लिए जरूरत नहीं है का उपयोग करता है-फीचर: छानने नियंत्रित करने के लिए हमेशा स्पष्ट रूप से तत्वों में हार्डवेयर सुविधाओं की घोषणा पर Google Play पर निर्भर होने के बजाय <uses-permission> तत्वों की आवश्यकताओं को "खोजें"। फिर, यदि आप किसी विशेष सुविधा के लिए फ़िल्टरिंग को अक्षम करना चाहते हैं, तो आप घोषणा के लिए android:required="false" विशेषता जोड़ सकते हैं।

यह है कि हार्डवेयर सुविधाओं मतलब अनुमतियों की सूची है:

https://developer.android.com/guide/topics/manifest/uses-feature-element.html#permissions-features

अपने तत्वों के आधार पर:

आप शायद ही जोड़ने की जरूरत:

<uses-feature android:name="android.hardware.telephony" android:required="false" /> 
संबंधित मुद्दे