user4001049
user4001049

Reputation:

Android clipboard manager on api level 8

in my application i want to use clipboard manager, in manifest my min sdk is 8 and for use ClipBoardManager i get this error:

Description Resource    Path    Location    Type
Call requires API level 11 (current min is 8): android.content.ClipData#newPlainText
Call requires API level 11 (current min is 8): android.content.ClipboardManager#setPrimaryClip
Call requires API level 11 (current min is 8): android.content.ClipData#newPlainText
Call requires API level 11 (current min is 8): android.content.ClipboardManager#setPrimaryClip
Call requires API level 11 (current min is 8): android.content.ClipData#newPlainText
Call requires API level 11 (current min is 8): android.content.ClipboardManager#setPrimaryClip
Call requires API level 11 (current min is 8): android.content.ClipboardManager#setPrimaryClip
Call requires API level 11 (current min is 8): android.content.ClipData#newPlainText

My code:

case 3:
    String n1 = numbers_list.getText ().toString ();
    @SuppressLint("NewApi") 
    @SuppressWarnings("deprecation")
    int sdk = android.os.Build.VERSION.SDK_INT;
    if (sdk < android.os.Build.VERSION_CODES.HONEYCOMB) {
        android.text.ClipboardManager clipboard = (android.text.ClipboardManager) G.context.getSystemService(G.context.CLIPBOARD_SERVICE);
        clipboard.setText(n1);
    } else {
        android.content.ClipboardManager clipboard = (android.content.ClipboardManager) G.context.getSystemService(G.context.CLIPBOARD_SERVICE);
        android.content.ClipData clip_data = android.content.ClipData.newPlainText(
        "TSMS", n1);
        clipboard.setPrimaryClip(clip_data);
    }
    numbers_list.setText ( "" );
    break;

Upvotes: 2

Views: 392

Answers (1)

gsanskar
gsanskar

Reputation: 669

You need to add suppress warnings in your code :

@SuppressLint("NewApi") 
@SuppressWarnings("deprecation") 

Use the code below :

    int sdk = android.os.Build.VERSION.SDK_INT;
if (sdk < android.os.Build.VERSION_CODES.HONEYCOMB) {
    android.text.ClipboardManager clipboard = (android.text.ClipboardManager) context.getSystemService(context.CLIPBOARD_SERVICE);
    clipboard.setText(n1);
} else {
    android.content.ClipboardManager clipboard = (android.content.ClipboardManager) context.getSystemService(context.CLIPBOARD_SERVICE);
    android.content.ClipData clip_data = android.content.ClipData.newPlainText(
    context.getResources().getString(
    R.string.message), n1);
    clipboard.setPrimaryClip(clip_data);
}

Hope this helps!

Upvotes: 1

Related Questions