2
ClipboardManager clipboard = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE); 
ClipData clip = ClipData.newPlainText("log", s);
clipboard.setPrimaryClip(clip);

このコードは、「コードにはAPIレベル11(現在は8)が必要です」というエラーが表示されます。これらの3行だけで、minSdkVersionを8から11に変更する必要があります。minSdkVersion8を使用して、このコードで何かを実行することはできますか?たとえば、現在のバージョンが11以上の場合にのみ実行しますか?しかし、私はまだこの機能を持ちたいので、minSdkVersionを変更したくありません。

4

1 に答える 1

4

コードを条件付きブロックにラップして、それを許可するプラットフォームバージョンでのみ実行できるようにすることができます。

if (VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
        ClipboardManager clipboard = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE); 
        ClipData clip = ClipData.newPlainText("log", s);
        clipboard.setPrimaryClip(clip);
}

またLint、この場合、使用する通常のエラーレベルではなく、警告レベルを使用するように指示することもできます。

Window -> Preferences -> Android -> Lint Error Checking -> Select New Api and change the severity to Warning

于 2012-10-13T16:50:55.420 に答える