2011-11-08 13 views
7

android.text.ClipboardManager एपीआई स्तर 11 के बाद से हटा दिया गया था, और android.content.ClipboardManager (source) के साथ प्रतिस्थापित किया गया था।बहिष्कृत android.text.clipboardManager

मैं कोड कैसे लिखूं जो दोनों मामलों का समर्थन करता है? android.content.ClipboardManager आयात करना और 11+ में उस काम का उपयोग करना, लेकिन बल 10 में बंद हो जाता है। आयात को android.text.ClipboardManager पर बदलना 11+ में बहिष्करण चेतावनियों का एक गुच्छा फेंकता है।

मैं दोनों मामलों को आसानी से कैसे संभाल सकता हूं? मुझे आयात करने की क्या ज़रूरत है?

उत्तर

6

मैं कुछ @SuppressWarnings ("बहिष्करण") एनोटेशन के साथ पुराने तरीके (android.text.ClipboardManager और this answer से कोड) का उपयोग कर समाप्त हुआ।

+1

.. ?? –

4

स्पष्ट:

@SuppressWarnings("deprecation") 
    android.text.ClipboardManager clipboard = (android.text.ClipboardManager) getSystemService(CLIPBOARD_SERVICE); 
    clipboard.setText(shareViaSMSBody); 

के बाद से इस पुराने उपकरणों पर काम कर रखने के लिए है, यह संभावना है कि पदावनत कोड एंड्रॉयड से निकाला नहीं जा जाएगा।

0

यदि आप अभी भी < एसडीके 11 का समर्थन कर रहे हैं तो आप बहुत अधिक काम कर रहे हैं। 15 मिनट निर्धारित करें और इस कोड का उपयोग:

ClipboardManager clipboard = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE); 
ClipData clip = ClipData.newPlainText("label for text", "text to copy"); 
clipboard.setPrimaryClip(clip); 
+0

अच्छी तरह से, मेरे जीएफ एक पुराने किंडल का उपयोग करते हैं तो एसडीके 15 एक विकल्प नहीं है – codingpuss

2

this answer का जिक्र करते हुए: प्रतिवाद समाधान के बारे में तो क्या

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { 
final android.content.ClipboardManager clipboardManager = (android.content.ClipboardManager) context 
     .getSystemService(Context.CLIPBOARD_SERVICE); 
final android.content.ClipData clipData = android.content.ClipData 
     .newPlainText("text label", "text to clip"); 
clipboardManager.setPrimaryClip(clipData); 
} else { 
final android.text.ClipboardManager clipboardManager = (android.text.ClipboardManager) context 
     .getSystemService(Context.CLIPBOARD_SERVICE); 
clipboardManager.setText("text to clip"); 
} 
संबंधित मुद्दे