如何在Android中收听副本

时间:2011-08-03 18:29:23

标签: java android

为了让自己更熟悉Android中的内容提供商,我正在制作一个小型剪贴板管理器应用。它的核心功能是简单地将您复制的内容添加到要显示的数据库中。我对Android的剪贴板框架有点熟悉,但我不知道该怎么做才能听取复制“事件”,知道需要将新项目添加到剪贴板。

为了澄清,我需要能够在用户复制内容时向数据库添加记录。我该怎么做?

3 个答案:

答案 0 :(得分:9)

如果您使用的是API级别11(3.0)或更高版本,那么您可以使用addPrimaryClipChangedListener文档here,并且有一些示例用法here

答案 1 :(得分:5)

放入你的班级:

ClipboardManager.OnPrimaryClipChangedListener mPrimaryChangeListener = new ClipboardManager.OnPrimaryClipChangedListener() {
        public void onPrimaryClipChanged() {

            // this will be called whenever you copy something to the clipboard
        }
    };

把它放在onCreate方法中:

ClipboardManager clipboard = (ClipboardManager) this.getSystemService(Context.CLIPBOARD_SERVICE);
clipboard.addPrimaryClipChangedListener(mPrimaryChangeListener);

这就是全部。我希望我能帮助你。

答案 2 :(得分:2)

你有什么API?这个答案:Listener for clipboard content change?似乎表明有一种方法可以让android 3.0及更高版本,但不是更低,不幸的是。

我唯一能想到的是制作服务,经常查询剪贴板以查看它是否已更改或是否有新文本。这可以使用ClipBoardManager轻松完成。