根据android文档,应使用service执行长时间运行的任务,并且service应该在单独的线程中。我有以下问题吗?注意:我使用的是普通服务而非意图服务。1默认情况下,服务运行在主线程中,我需要在其中创建线程以执行长时间运行的任务onCreate,onStartCommand吗?2在绑定服务的情况下,我需要创建线程来执行长时间运行的任务onCreate,onBind?
使用此
public class NetworkService extends Service {
private HandlerThread mHandlerThread;
private Handler mHandler;
private final IBinder mBinder = new MyLocalBinder();
@Override
public void onCreate() {
super.onCreate();
mHandlerThread = new HandlerThread("LocalServiceThread");
mHandlerThread.start();
mHandler = new Handler(mHandlerThread.getLooper());
}
public void postRunnable(Runnable runnable) {
mHandler.post(runnable);
}
public class MyLocalBinder extends Binder {
public NetworkService getService() {
return NetworkService.this;
}
}
@Override
public IBinder onBind(Intent intent) {
return mBinder;
}
}