2012-01-17 16 views
0

私は電話を受けるとタスクを実行するアプリを作成しています(BROADCASTRECEIVERでRINGING状態を検出しています)。私の質問は、登録できますか(文字通りONとOFF) 2つのボタンを有する活動からの放送受信機; ONのためのものとOFFのためのものとを言うか?ON&OFF Android Broadcastreceiver

BROADCASTRECEIVERをアクティビティ内で宣言する必要がありますか?その場合は、アクティビティを介して登録して登録を解除できますか?

+0

はいsubru(SICS)あなたがいないの一環として、答えとしてあなたの答えを投稿する必要があり – Ramz

+0

がedittedコードMr.Ramzを参照してくださいあなたのコード... – subrussn90

+0

を投稿してください質問。 – fredley

答えて

2

これは私がそれを行うような方法である:

  • 私は別のBroadcastReceiverを定義し、むしろ自分の活動でそれを使用するよりもアンドロイドマニフェストで定義します。こうすることで、私の放送受信機は、2つのボタン(オン/オフ)との活動を書き、フラグとしてその作用を保存、共有設定で
  • 更新broadcastreceiverのonReceive方法や好みでフラグをかどうかを確認アクティビティ
  • から独立して動作することができますそれは
-1

//放送受信 packageManager.setComponentEnabledSetting(componentNameでは、 PackageManager.COMPONENT_ENABLED_STATE_ENABLED、PackageManager.DONT_KILL_APP)を有効にするために使用無視さもなければ、インテントを処理するtrueに設定されています。

//use to disable the broadcast receiver 
packageManager.setComponentEnabledSetting(componentName, 
        PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP); 

このsubruを試してみてください