如何从SensorManaget取消注册SensorEventListener?

时间:2012-05-07 11:48:14

标签: java android

我一直在开发通过SensorEventListener使用SensorManager的应用程序。但是有一个问题:当应用程序启动时,它应该从SensorManager中删除我的侦听器并创建一个新的侦听器,但是SensorManager只有2个方法 - registerListener和unregisterListener,但是当我执行应用程序时,我无法获得最后一个侦听器的引用并取消注册。请告诉我任何方式,以便我可以解决它。谢谢。

1 个答案:

答案 0 :(得分:0)

不要杀死进程不是个好主意。以下是检测服务的代码。

    ActivityManager activity_manager = (ActivityManager)this.getSystemService(ACTIVITY_SERVICE);
    List<ActivityManager.RunningServiceInfo> current_services = activity_manager.getRunningServices(50);

    for (int i=0; i<current_services.size(); i++) {
      ActivityManager.RunningServiceInfo temp_service = current_services.get(i);
      if (temp_service.getClass().equals("your complete class name with package")) {
          //DO YOUR WORK HERE.
           android.os.Process.killProcess(temp_service.pid); //TO KILL PROCESS BUT I RECOMMEND DON'T KILL IT.
      }
    }