Мне нужна небольшая помощь, чтобы понять пару вещей о gcm - на стороне сервера. Я работаю над приложением для обмена мгновенными сообщениями с примером серверной части здесь http://developer.android.com/google/gcm/ccs.html
После того, как я выполняю этот код, он подключается, но завершается через несколько секунд. Я могу предположить, что причина в функции main().
public static void main(String[] args) throws Exception {
final long senderId = 1234567890L; // your GCM sender id
final String password = "Your API key";
SmackCcsClient ccsClient = new SmackCcsClient();
ccsClient.connect(senderId, password);
// Send a sample hello downstream message to a device.
String toRegId = "RegistrationIdOfTheTargetDevice";
String messageId = ccsClient.nextMessageId();
Map<String, String> payload = new HashMap<String, String>();
payload.put("Hello", "World");
payload.put("CCS", "Dummy Message");
payload.put("EmbeddedMessageId", messageId);
String collapseKey = "sample";
Long timeToLive = 10000L;
String message = createJsonMessage(toRegId, messageId, payload,
collapseKey, timeToLive, true);
ccsClient.sendDownstreamMessage(message);
}
Разве не должно быть выражение «пока», которое поддерживает соединение XMPP между сервером приложений и сервером GCM?
В этом случае цель серверной части (приложение для обмена мгновенными сообщениями) состоит в том, чтобы поддерживать соединение с сервером GCM и прослушивать входящие сообщения от клиентов. такие сообщения, как: 2.1 Когда клиент хочет зарегистрироваться в приложении, поэтому мне нужно сохранить его данные в базе данных. 2.2 Когда клиент хочет отправить сообщение другому клиенту, поэтому серверное приложение отвечает за пересылку сообщения по назначению?
Я искал пару примеров реализации серверной части gcm с использованием xmpp, и все они были с такой основной функцией, о которой я упоминал выше... Я что-то не так понимаю?