android剪贴板广播接收器

我想做一个简单的服务,(这将在后台运行),当任何用户从浏览器或短信等复制任何东西,将有一个吐司显示文本

有这个代码,当有一个电话给烤面包

public class MyPhoneReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { Bundle extras = intent.getExtras(); if (extras != null) { // this code is for to accept the telephone call String state = extras.getString(TelephonyManager.EXTRA_STATE); if (state.equals(TelephonyManager.EXTRA_STATE_RINGING)) { String phoneNumber = extras.getString(TelephonyManager.EXTRA_INCOMING_NUMBER); Toast.makeText(context, phoneNumber, Toast.LENGTH_SHORT).show(); } } } } 

这个代码在manifest.xml中

 <action android:name="android.intent.action.PHONE_STATE"></action> 

现在这个代码告诉发送任何手机状态到myreciever类现在我想从剪贴板经理的文本。 是否有任何intent.action状态可以调用myreciever类时有人复制文本。

任何forms的帮助或代码将不胜感激。

Solutions Collecting From Web of "android剪贴板广播接收器"

由于现在有剪贴板的动作意图,你需要做的是创build一个广播接收器,当你的应用程序启动时启动,当设备第一次启动。 然后启动一个服务来监视剪贴板的状态。

这是一个完美的项目在谷歌代码,将显示你完全该怎么做。

我的剪辑教程

我同意“coder_For_Life22”:“ 由于现在有剪贴板动作意图,… ”。
我发现了两种监视“剪贴板”的方法:
1-类似于“coder_For_Life22”的方式。
2 – 使用“ ClipboardManager.OnPrimaryClipChangedListener() ”方法。
但他们都有问题
在第一种方式,如果用户复制一个单词例如“文本”,然后(即使在有时和在另一个应用程序)再次复制相同的单词,你无法检测到它。
第二种方法,是使用android 3.0 API 11的解决scheme,而不是更低。