Я делаю свой сервис для android для общения со всей моей деятельностью. Все работают хорошо, но сегодня я хочу попытаться отправить сообщение от службы всем подключенным клиентом. Код в IncomingHandlerAndroid - не удается отправить сообщение с моей службы всем клиентам
@Override
public void handleMessage(Message msg) {
switch (msg.what) {
case MSG_1:
Log.i("RpcChannelService", "MSG_1");
//send msg to all clients
Message msgGpsEnable= Message.obtain(null,
RpcChannelService.MSG_1);
for (Messenger client : mClients) {
try {
client.send(msgGpsEnable);
} catch (RemoteException e) {
Log.i("RpcChannelService", "handleMessage:MSG_GPS_ENABLE exception");
}
}
break;
}
}
Когда я бегу/отладить этот код, после того, как передача думал этот код, программа сделать навсегда петлю. Может ли кто-нибудь сказать мне, почему? Спасибо большое.
mClients - это массив Messenger, который хранит все подключенные клиенты. –
где это петля? – pskink
Мой плохой. Я должен создать новый экземпляр сообщения внутри цикла. –