2012-01-06 91 views
7

我想打一個簡單的服務,(這將在後臺運行)時,從瀏覽器或手機短信等任何用戶複製任何東西,都會有顯示,文本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類。

任何形式的幫助或代碼將不勝感激。

+0

@lori你能幫助我嗎你是怎麼做到的,因爲我找不到 – 2014-07-11 13:00:13

回答

13

由於現在有剪貼板的動作意圖,您需要做的是創建一個廣播接收器,以便在設備首次啓動時啓動應用程序時啓動。然後啓動一個服務來監視剪貼板的狀態。

這是一個完美的google代碼項目,它會向你顯示你要做什麼。

My Clip tutorial

+1

老兄你真誠的男人thankx很多...:D這正是我需要的 – Iori 2012-01-06 16:12:54

+0

沒問題=)很高興有幫助 – 2012-01-06 17:12:40

+0

嗨@ coder_For_Life22我不能檢查鏈接上的代碼你已經給..可以分享鏈接從我可以dwnld來源 – Sudarshan 2013-02-25 11:39:29

0

我同意 「coder_For_Life22」: 「既然現在有意向的行動剪貼板,...」。
我發現了兩種監控「剪貼板」的方法:
1-A說「coder_For_Life22」的方式。
2-使用「」ClipboardManager.OnPrimaryClipChangedListener()「」方法。
但它們都有問題
在第一種方式,如果用戶(即使有時和其他應用程序)複製一個詞,例如「文本」,然後再複製同一個詞,你不能檢測到它。
第二種方式,是使用android 3.0 api 11而不是更低版本的解決方案。