Проблема в ключевом получении

Я разрабатываю приложение, которое должно получить ключевые события и на переднем плане и на фоне. Я использовал следующий код. Но не может получить ключи в фоне.

package com.sri.KeyCap;
import android.app.Activity;
import android.content.Intent;
import android.os.IBinder;
import android.view.KeyEvent;
import android.widget.Toast;
import java.io.OutputStreamWriter;

public class KeyCap extends Activity {
 OutputStreamWriter out;
 int flag = 0;

 /** Called when the activity is first created. */

 public IBinder onBind(Intent intent)
 {
  return null;


  //super.onCreate(savedInstanceState);
  //setContentView(R.layout.main);

 }

 public boolean onKeyDown(int keyCode, KeyEvent event) {
  try {

   if (flag == 0) {
    out = new OutputStreamWriter(
      openFileOutput("myfilename.txt", 0));
    flag = 1;
   }

   out.write("" + keyCode);
   out.flush();
   Toast.makeText(getApplicationContext(), "" + keyCode,
     Toast.LENGTH_LONG).show();

  } catch (java.io.IOException e) {

   // do something if an IOException occurs.

  }

  return true;

 }
}

Я использовал широковещательный получатель..

package com.sri.KeyCap;

import android.content.BroadcastReceiver; 
import android.content.Context; 
import android.content.Intent; 

public class _service extends BroadcastReceiver {

 public void onReceive(Context aContext, Intent aIntent) { 


  aIntent.setClass(aContext,KeyCap.class);
  aContext.startActivity(aIntent);
 }
}

Может любой исправлять меня..

1
задан David 13 September 2010 в 12:08
поделиться