2011-11-08 18 views
7

android.text.ClipboardManager, API düzeyi 11'den beri kullanımdan kaldırıldı ve android.content.ClipboardManager (source) ile değiştirildi.Kullanımdan kaldırılan android.text.ClipboardManager

Her iki durumu da destekleyen kodu nasıl yazarım? android.content.ClipboardManager'u içe aktarma ve bunu kullanarak 11 + 'da çalışıyor ancak zorla 10'da kapanıyor. İçe aktarmanın android.text.ClipboardManager olarak değiştirilmesi, 11+ içinde bir dizi kullanım dışı bırakma uyarısı atar.

Her iki vakayı da sorunsuz nasıl halledebilirim? İçe aktarmaya ne ihtiyacım var?

cevap

6

Eski bir yolla (android.text.ClipboardManager ve this answer kodundan), bir çift @SuppressWarnings ("kullanım dışı bırakma") ek açıklamaları ile birlikte sona erdim. Açıkça

+1

.. ?? –

4

:

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

bu eski cihazların üzerinde çalışmaya devam etmek sahip olduğundan, kaldırılan kod Android'den kaldırılmayacak muhtemeldir.

0

< SDK 11'i hala destekliyorsanız çok fazla iş yapıyorsunuz. 15 dakika ayarlayın ve bu kodu kullanın:

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

iyi, benim gf eski bir kindle kullanın sdk 15 bir seçenek değil – codingpuss

2

this answer değinen: Kullanımdan kaldırma çözümü hakkında Sonra ne olacak

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"); 
}