Android获取剪切板内容 |
您所在的位置:网站首页 › 剪贴板apk › Android获取剪切板内容 |
项目里有一个功能要求获取剪切板上的内容,原代码如下: @Nullable public static String getClipboardContentTest(Context context) { ClipboardManager cm = (ClipboardManager) context.getSystemService(Context.CLIPBOARD_SERVICE); if (cm != null) { ClipData data = cm.getPrimaryClip(); if (data != null) { ClipData.Item item = data.getItemAt(0); if (item != null) { //TODO item.getText()部分手机可能会在剪切板没有相关的文本内容返回null return item.getText().toString(); } } } return null; }监测到item.getText().toString()这一行产生了相关的错误信息: java.lang.NullPointerException: Attempt to invoke interface method 'java.lang.String java.lang.CharSequence.toString()' on a null object reference 查了一些相关的资料修复了上面的错误,修复后的获取剪切板内容代码如下: /** * 获取剪切板上的内容 */ @Nullable public static String getClipboardContent(Context context) { ClipboardManager cm = (ClipboardManager) context.getSystemService(Context.CLIPBOARD_SERVICE); if (cm != null) { ClipData data = cm.getPrimaryClip(); if (data != null && data.getItemCount() > 0) { ClipData.Item item = data.getItemAt(0); if (item != null) { CharSequence sequence = item.coerceToText(context); if (sequence != null) { return sequence.toString(); } } } } return null; }
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |