2012-01-20 18 views
7

私はスリープまたは電源ボタンを2回押したときに起動する、アンドロイドでこのようなアプリケーションを作成したいのですが、バックグラウンドでアプリケーションを実行し、電源スイッチ ?電源ボタンをクリックしたときにアプリケーションを起動する

一度アイドル状態になるとスリープモードになり、アプリケーションを使用するには スリープボタンを押してから、電話をかけるためにパスワードを入力する必要があります。しかし、他の介入なしにパワーボタンをクリックしたときにアプリケーションをアクティブにするようにしたいのですが。

+0

あなたはここにsmiliar question.httpがある、私はそれをしようとしなかった、それを行うためにサービスを記述する必要がありますが://stackoverflow.com/questions/5907102/home-button-listener – ocanal

答えて

13

このトリックを試すことができます。

パワーボタンがクリックされたときに開始されるブロードキャストレシーバを登録します。 ReceiverのOnReceiveメソッドで、何をしたいのですか?例えば

マニフェストファイル内の受信レジスタ:受信

public class MyReceiver extends BroadcastReceiver { 

    @Override 
    public void onReceive(Context arg0, Intent arg1) { 
     // TODO Auto-generated method stub 

     Log.v("#@%@%#", "Power button is pressed."); 

     Toast.makeText(arg0, "power button clicked",Toast.LENGTH_LONG).show(); 

     //perform what you want here 
    } 
} 

のonReceive()メソッドで

<receiver android:name="com.test.check.MyReceiver"> 
     <intent-filter> 
      <action android:name="android.intent.action.SCREEN_OFF"></action> 
      <action android:name="android.intent.action.SCREEN_ON"></action> 
      <action android:name="android.intent.action.ACTION_POWER_CONNECTED"></action> 
      <action android:name="android.intent.action.ACTION_POWER_DISCONNECTED"></action> 
      <action android:name="android.intent.action.ACTION_SHUTDOWN"></action> 
     </intent-filter> 
    </receiver> 

& &を今onReceive(任意の操作を実行します)受信者の方法。

+1

ねえ私はこのコードとその作業を行い、電源ボタンが接続または切断されたときにトーストを表示します。コードを少し修正しましたので、上記のポストを編集しています。 ... –

+0

上記のコードでどのような変更を行ったか教えてください。最も細かいファイルの完全なコードを貼り付けてください。ありがとう –

+0

この5つのアクションからtelefoneがロックされている間に働いているのはSCREEN_ON-Eventだけです。 – bofredo

0

これはパワーからのいくつかのアイデアを得ることができる重要なイベントです。これでちょっと試してみてください。 私はそのような行為を試みませんでしたが、パワーマネージャーでこれを見つけました。

public boolean onKeyDown(int keyCode, KeyEvent event) { 
    if (event.getKeyCode() == KeyEvent.KEYCODE_POWER) { 
     // do what you want with the power button 
     return true; 
    } 
    return super.onKeyDown(keyCode, event); 
} 
+2

これは、_onKeyDown_が実行され、アクティブであるアクティビティ – Moesio

関連する問題