在Android中在不同的应用程序间复制数据,可以使用系统的剪贴板来完成。API 11之前使用android.text.ClipboardManager来实现,API 11后使用android.content.ClipboardManager和android.content.ClipData来完成。
SDK11之前请使用android.text.ClipboardManager
android.text.ClipboardManager clipboardManager = (android.text.ClipboardManager)getSystemService(Context.CLIPBOARD_SERVICE); // 将内容写入剪贴板 clipboardManager.setText("复制的内容"); if (clipboardManager.hasText()){ // 从剪贴板获取数据 clipboardManager.getText(); }
SDK11起android.text.ClipboardManager被废弃,使用它的子类android.content.ClipboardManager替代,同样被废弃还有setText/getText/hasText方法,使用setPrimaryClip/getPrimaryClip/hasPrimaryClip替代
android.content.ClipboardManager clipboardManager = (android.content.ClipboardManager)getSystemService(Context.CLIPBOARD_SERVICE); // 将内容写入剪贴板 clipboardManager.setPrimaryClip(ClipData.newPlainText(null, "复制的内容")); if (clipboardManager.hasPrimaryClip()){ // 从剪贴板获取数据 clipboardManager.getPrimaryClip().getItemAt(0).getText(); }
部分android API版本表格:
平台版本 | API级别 | 版本代码 |
---|---|---|
Android 3.2 | 13 | HONEYCOMB_MR2 |
Android 3.1.x | 12 | HONEYCOMB_MR1 |
Android 3.0.x | 11 | HONEYCOMB |
Android 2.3.4 Android 2.3.3 | 10 | GINGERBREAD_MR1 |
Android 2.3.2 Android 2.3.1 Android 2.3 | 9 | GINGERBREAD |
Android 2.2.x | 8 | FROYO |
Android 2.1.x | 7 | ECLAIR_MR1 |
Android 2.0.1 | 6 | ECLAIR_0_1 |
Android 2.0 | 5 | ECLAIR |
Android 1.6 | 4 | DONUT |
Android 1.5 | 3 | CUPCAKE |
Android 1.1 | 2 | BASE_1_1 |
Android 1.0 | 1 | BASE |