我想制作一个录音机应用程序,即使应用程序处于后台也可以录制。所以我实施了一项服务。我需要启动它,然后立即启动它。因为我怀疑startService和bindService是异步调用。而且我经历过,当我在彼此之后进行调用时,有时会调用bindService,当服务未正确启动时。我怎样才能确定bindService仅在服务启动时运行?
答案 0 :(得分:0)
我使用以下代码段启动并绑定到服务:
Intent playerIntent = new Intent(activity, PlayerService.class);
activity.startService(playerIntent);
activity.bindService(playerIntent, mConnection, Context.BIND_AUTO_CREATE);
mConnection
是一个ServiceConnection实例,在启动和绑定服务时会收到onServiceConnected
回调。每当我与服务进行交互时,我都会询问ServiceConnection
服务是否绑定。