BlueTooth Android Chat Sample中的SendToTarget GetTarget

时间:2013-03-19 16:09:13

标签: java android android-service

我正在努力使BlueTooth Chat Sample使用远程服务而不是本地服务(供以后使用)。

但是当我尝试使用Handler(用于显示已发送和已接收的消息)时,会发生错误,我不知道如何修复:

mHandler.obtainMessage(RemoteServiceClient.MESSAGE_WRITE, -1, -1, buffer).sendToTarget();

该行向Handler发送一些信息,包括消息代码(MESSAGE_WRITE)和我想要显示的缓冲区(缓冲区)的内容。

但是当我在应用程序中发送消息时,它崩溃并且日志显示nullPointerException,我想这与缺少getTarget相对应。

我的问题是:在原始示例中,没有getTarget(在我的应用程序中),但sendToTarget工作正常。如何解释以及如何在我的应用程序中使其工作?

1 个答案:

答案 0 :(得分:1)

我使用dispatchMessage修正了问题:

messageToMainService.what = VALUES_FROM_THREAD;
messageData.putParcelable("pgnParcelable", pgnListParcelable);
messageData.putParcelable("currentLocation", myLocation);
messageData.putLong("timerBoucle", ellapseTime + timeToSleep);
    //messageData.putWhateverYouWant
messageToMainService.setData(messageData);
mHandler.dispatchMessage(messageToMainService);

我想知道这种用法是否正确。请告诉我它是否不是