gpt4 book ai didi

android - ClipData getPrimaryClipDescription() 在 Android 6.0.1 中返回 null

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:45:28 25 4
gpt4 key购买 nike

if (mClipboard.getPrimaryClipDescription().hasMimeType(ClipDescription.MIMETYPE_TEXT_PLAIN) ||
mClipboard.getPrimaryClipDescription().hasMimeType(ClipDescription.MIMETYPE_TEXT_HTML))

getPrimaryClipDescription() 在少数 Android 6.0.1 中为 null。

Attempt to invoke virtual method 'boolean android.content.ClipDescription.hasMimeType(java.lang.String)' on a null object reference

更新

请尝试三星 Galaxy S5 和 Note 4 等设备。

最佳答案

我使用 Genymotion 模拟器在 Galaxy S6 - 6.0.0 图像上测试了这段代码,我没有收到任何错误。

       // Copy to clipbaord
ClipboardManager clipboard = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE);
// ClipData clip = ClipData.newPlainText("Label", "TEXT");
// clipboard.setPrimaryClip(clip);

if (clipboard.getPrimaryClipDescription().hasMimeType(ClipDescription.MIMETYPE_TEXT_PLAIN) ||
clipboard.getPrimaryClipDescription().hasMimeType(ClipDescription.MIMETYPE_TEXT_HTML))
{
Log.d("Copied!", "Copied!");
}

一些建议:

  1. 检查 mClipboard 是否已实例化。
  2. 我已经用 ClipData clip 和 setPrimaryClip 测试了代码注释行和未注释行都没有错误。但是,您可以如果您还没有,请添加这些行来测试您的代码。
  3. hasMimeType()getPrimaryClipDescription()已经自 API 11 以来添加到 Android,因此三星没有理由禁用它们(不提供足够的错误消息)。
  4. 尝试在您的主要代码之前添加此代码:

    如果 (!(mClipboard .hasPrimaryClip()))

    这将确保剪贴板有一个主剪辑,您可以处理。

  5. 检查来自 Android 网站的此链接: https://developer.android.com/guide/topics/text/copy-paste.html它有很好的关于复制和粘贴内容的信息和代码。

  6. 最后,联系三星。你可以在三星上发帖提问开发者社区http://developer.samsung.com/community去检查问题的根源,因为这个问题是三星特有的设备。

关于android - ClipData getPrimaryClipDescription() 在 Android 6.0.1 中返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38320907/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com