没有实例的Android Calling Service Method

时间:2013-09-14 12:41:31

标签: java android android-ndk android-service

我有一个Connection类,它接收来自本机代码的回调。一旦回调到达,消息对象就会生成。

我有一个应该将此消息发送给其他应用程序的服务。

我的连接类看起来像这样:

//Callback from the native code
public void callback(int data1, int data2){
buildMsg(int data1, int data2);
}

public void buildMsg(int data1, int data2){
Message msg = new Message(data1,data2);
}

邮件对象是可以分配的。

buildMsg方法应该调用newMsgReceived()方法,使服务发送此消息的其他应用程序。

服务如下:

public void newMsgReceived(Message msg){
//calling an interface for IPC to send the message
}

此服务从消息接收应用程序开始,因此所有绑定和ipc都已正常工作。所以我的问题是,是否可以在本机回调到达时调用newMsgReceived()方法,而不创建另一个服务实例?

1 个答案:

答案 0 :(得分:0)

在您的服务类中,添加

static private Service _singletonInstance = null;

private void setInstance() { _singletonInstance = this; }

private static void newMsgReceived(Message msg) { _singletonInstance.newMsgReceived(msg); }

错误检查不包括在内以简洁