1

例如,我如何在 ASyncTask 中启动我的服务

MyTask task = new MyTask();
startService(new Intent(MainActivity.this, MyService.class),    task);

这样做的正确方法是什么?

我想告诉服务在哪些线程中执行

4

1 回答 1

0

来自 Android 开发者的报价。:

AsyncTask 允许正确和轻松地使用 UI 线程。此类允许在 UI 线程上执行后台操作并发布结果,而无需操作线程和/或处理程序。

我想如果您不直接使用 startService,您是否想在新线程中启动它,不是吗?如果是这样,你应该做一个新线程:

Thread t = new Thread(){
public void run(){
getApplicationContext().bindService(
        new Intent(getApplicationContext(), YOURSERVICE.class),
        serviceConnection,
        Context.BIND_AUTO_CREATE
    );
}
};
t.start();
于 2013-01-23T18:56:32.173 回答