如何调用主要活动中的抽象类扩展服务或线程?

时间:2013-05-31 11:59:54

标签: android

我正在尝试创建一个扩展服务或线程的抽象类。这是因为我必须每秒运行这个类以找出前台活动。如果它的服务我正在使用Runnable并使用Handler使其每秒运行一次。但我无法从主要活动启动服务或线程。我知道抽象类不能被实例化,但是有什么工作可以在这里使用吗?请帮忙。

    public abstract class A extends Service Implements Interface {
    public void onCreate() {
        super.onCreate();
        mHandler.postDelayed(runnable, 1 * 1000);
}
   protected abstract void getData();

   public Runnable runnable = new Runnable() {
        public void run() {

        //Trying to find Foreground Activities

        A start = new B();
        start.getData();

mHandler.postDelayed(runnable, 1 * 1000);
 }
};

//Inteface methods defined here.
}

另一堂课:

public class B extends A {

    public void getData() {
      //Do my stuff
    }
}

现在我需要调用这个A类,这样就可以执行这个抽象方法,其中I类扩展了A。

1 个答案:

答案 0 :(得分:1)

实例化一个抽象类(的匿名子类):


abstract class AbstractClass {}

public class MyActivity extends Activity {
   public void onCreate(Bundle i) {
      AbstractClass abstractInstance = new AbstractClass(){};
   }
}

虽然实际上你不应该这样做。我建议的是一种简单的基于JavaSE并发的方法,使用ScheduledExecutorService