Копировать с менеджером буфера обмена, который поддерживает старые и новые версии Android?

Я пытаюсь скопировать текст программно на android, самый проголосовавший ответ на другой вопрос предоставил эти строки, но при их использовании я получаю ошибку: для класса требуется уровень API 11 (текущий мин – 8):

ClipboardManager clipboard = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE); ClipData clip = ClipData.newPlainText("label", "Text to copy"); clipboard.setPrimaryClip(clip); 

Я скопировал строки непосредственно из вопроса. После попытки import android.content.ClipboardManager; Я протестировал import android.text.ClipboardManager; Но он также вызвал ошибку The method setPrimaryClip(ClipData) is undefined for the type ClipboardManager плюс предупреждения о том, что ClipboardManager устарел.

Мое приложение, которое поддерживает Android 2.2 (API 8, я думаю), как я могу скопировать текст, чтобы он работал на всех версиях Android?

Solutions Collecting From Web of "Копировать с менеджером буфера обмена, который поддерживает старые и новые версии Android?"

Попробуйте использовать что-то вроде следующего:

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