如何自行启动服务?
我不想从另一个活动启动服务。但是我想将服务绑定到活动。
我的问题正是此链接中所述。
onServiceConnected never called after bindService method
即我的onserviceconnected永远不会被调用。
Messenger mService = null;
public void onServiceConnected(ComponentName className, IBinder service) {
mService = new Messenger(service);
Log.d("IMSLogging", "inside onServiceConnected");
}
从我的活动的oncreate我正在调用bindService。但是我在执行mService.send(msg)时会得到nullpointerexception;从oncreate。(当然,在bindService被调用之后)。尽管bindService返回true。
最佳答案
您必须先获得mService.send()
回调后才能调用onServiceConnected()
。这意味着您不能在bindService()
中同时执行mService.send()
和onCreate()
。您需要将mService.send()
调用移至onResume()
或onServiceConnected()
或其他位置。