2012-08-15 44 views
15

मैंने हाल ही में एक एंड्रॉइड ऐप बनाया है जिसमें 7 के minSdkVersion और 10 के targetSdkVersion के साथ एक एंड्रॉइड ऐप बनाया गया है। अब मैं ऐप टैबलेट को संगत और एक्शन बार जोड़ रहा हूं। तो मैंने targetSdkVersion द्वारा 15 तक अपडेट किया और मेरे प्रोजेक्ट गुणों में, मेरे प्रोजेक्ट बिल्ड टार्केट को एंड्रॉइड 4.0.3, एपीआई 15 में ले जाया गया। मैंने डबल-चेक किया कि मेरा जावा कंपाइलर 1.6 है।एंड्रॉइड डिवाइस चयनकर्ता लक्ष्य कॉलम में रेड एक्स दिखाता है

मेरे कोड में कोई अन्य बदलाव किए बिना, मैं अपना ऐप चलाने और एंड्रॉइड डिवाइस चयनकर्ता में चलाने की कोशिश करता हूं, मेरे दो भौतिक डिवाइस, संस्करण 2.3.4 और 3.1, दोनों के बजाय लक्ष्य कॉलम में लाल एक्स है हरा चेक मार्क।

मैं एक्शनबार कॉम्पेट नमूना ऐप और एक्शनबारशेरल से एक नमूना ऐप के साथ भी काम कर रहा हूं और जब मैं उन दोनों ऐप्स में से एक चलाता हूं, तो मेरे दोनों डिवाइस, एक हरे रंग की चेक मार्क दिखाते हैं। इन दोनों नमूना ऐप्स में उनके प्रोजेक्ट बिल्ड लक्ष्य 4.0.3 पर सेट है और मेरे ऐप में एक ही sdkVersion सेटिंग्स हैं। जहां तक ​​मैं कह सकता हूं, मेरा ऐप दूसरों के समान ही स्थापित है। लक्ष्य ऐप में मेरे डिवाइस संस्करणों के बगल में मेरे ऐप के बाद लाल एक्स क्यों है।

धन्यवाद!

+0

क्या आपका ऐप किसी लाइब्रेरी प्रोजेक्ट का संदर्भ देता है? यदि ऐसा होता है, तो मुझे आश्चर्य है कि क्या आप यह जांच सकते हैं कि आपके पास project.properties फ़ाइल में 'manifestmerger.enabled = true' है या नहीं, और देखें कि इसे जोड़ने/हटाने से कोई फर्क पड़ता है। – Joe

+0

@ जो मैंने अभी यह टिप्पणी देखी है। Manifestmerger.enabled = true जोड़ने से कुछ भी नहीं बदला। मैं एक्शनबैरशॉक लाइब्रेरी और प्रकृति द्वारा, एंड्रॉइड की समर्थन लाइब्रेरी समेत हूं। जैसे ही मैंने अपना प्रोजेक्ट बिल्ड लक्ष्य बदल दिया और अपना मैनिफेस्ट अपडेट किया, मैंने पुस्तकालयों को शामिल करने से पहले लाल एक्स का प्रदर्शन किया। – dbDev

+0

क्या आप एक्शनबारकंपेट का लिंक दे सकते हैं जिसका आप परीक्षण कर रहे हैं? –

उत्तर

9

ग्रहण में, minSdkVersion और targetSdkVersion

बदल रहा है, तो "एंड्रॉयड डिवाइस चयनकर्ता" अभी भी डिवाइस पर लाल एक्स (compatibles होना चाहिए जो) से पता चलता है। प्रयास करें:

  • खोलें "डीबग विन्यास" या "भागो कॉन्फ़िगरेशन" संवाद
  • "एंड्रॉयड आवेदन" परियोजना पर
  • पुन: प्रयास करें राइट-क्लिक करें> डीबग के रूप में> Android आवेदन
  • के तहत सभी विन्यास निकालें

सभी संगत डिवाइस अब हरे रंग के चेक चिह्न में बदलना चाहिए।

+0

वह था !!! इस प्रतिक्रिया को पोस्ट करने के लिए बहुत बहुत धन्यवाद! हर कोई, कृपया इस जवाब को वोट दें! – dbDev

+0

@ हेप क्या आप समझते हैं कि अगर आप कारण जानते हैं तो यह क्यों काम करता है? – JDenais

+0

@ जेडेनाइस मैंने माना कि "डीबग कॉन्फ़िगरेशन" ने पुराने minSdkVersion और targetSdkVersion को कैश किया है, इसलिए उन्हें बदलने के बाद, आपको "डीबग कॉन्फ़िगरेशन" (प्रोजेक्ट पर राइट-क्लिक> डीबग एज़> एंड्रॉइड एप्लिकेशन) को फिर से बनाना चाहिए। – Hiep

3

ऐसा इसलिए है क्योंकि आपके डिवाइस एंड्रॉइड संस्करण 2.3.4, और 3.1, चला रहे हैं, इसलिए आपके पास कम से कम minSdkVersion = "10" होना चाहिए। एक बार जब आप minSdkVersion से 10 सेट करते हैं, तो आपको फिर से हरा चेक मार्क मिल जाएगा।

+0

प्रश्न में बताया गया है कि minSdkVersion पहले से 7 पर सेट है, नहीं? – Joe

+0

@ जो सही है, मेरे पास पहले से ही minSdkVersion सेट 7 था। इसे 3 पर सेट करने से कोई मदद नहीं मिली। ऊपर वर्णित नमूना कोड न्यूनतम 3 है, लक्ष्य 14 है और मुझे उस कोड के लिए हरे रंग की जांच मिलती है। मैं यह नहीं समझ सकता कि नमूना कोड और मेरे कोड के बीच क्या अंतर है। – dbDev

+0

मैंने इसे अनदेखा किया। –

1

AndroidManifest.xml:

<uses-sdk android:minSdkVersion="7" android:targetSdkVersion="15" /> 

यदि आपका प्रकट अपने डिवाइस की तुलना में अधिक "targetSdkVersion" है, यह एक "लाल क्रॉस (एक्स)" फर्मवेयर के बगल में दिखाई देगा।

अपने minSdkVersion उच्च कि आपके यह डिवाइस भी

अद्यतन नहीं चलेंगे है:

मैं नमूना परियोजना का परीक्षण किया और मेरा उत्तर शुरुआत के बाद स्पष्ट किया के रूप में एक ही परिणाम मिला है। (image of the project running with same specifications as the question)

+0

यह गलत है, यदि आप ActionBarCompat नमूना को लोड करते हैं, तो आप देखेंगे कि यह minsdkVersion 3 का उपयोग करता है और 14 के targetSdkVersion का उपयोग करता है। जब मैं उस एप्लिकेशन को चलाता हूं, उसी डिवाइस पर जैसे ही मैं अपना एप्लिकेशन चलाता हूं, मुझे हरे रंग के चेक अंक मिलते हैं। जैसे ही मैं अपना आवेदन चलाता हूं, मुझे लाल एक्स मिलता है। – dbDev

+0

अच्छी तरह से मैंने परीक्षण किया है यदि मैं प्रोजेक्ट> गुण> एंड्रॉइड में "प्रोजेक्ट बिल्ड लक्ष्य" को अपने डिवाइस की तुलना में एक उच्च लक्ष्य पर लाल क्रॉस दिखाई देता हूं, लेकिन यदि कम है तो एक हरा चेक दिखाई देता है। आपने उसे किया है ? या सिर्फ मैनिफेस्ट बदल दिया? क्योंकि मैनिफेस्ट परियोजना निर्माण लक्ष्य को अपडेट नहीं करता है। –

+0

मुझे नहीं पता कि क्यों -1 -1 किसी भी तरीके से। यह पहला व्यक्ति है जो मुझे देता है। –

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