2016-10-12 4 views
0

openfire smack 라이브러리를 사용하여 Android 채팅 응용 프로그램을 개발 중입니다. 백그라운드에있을 때 메시지를 수신하도록 바인딩 서비스를 만들었습니다. 연결 개체도 유지 관리됩니다. 서비스는 배경 메시지를 듣는 것처럼 잘 작동하지만 응용 프로그램이 백그라운드에있는 동안 항상 사용자가 온라인에 표시됩니다. 사용자가 메시지를들을 수 있지만이 연결은 사용자를 표시 할 수 있도록 연결 유지가 필요합니다. 언제나 온라인으로 볼 수 있습니다. 앱이 백그라운드에있을 때 사용자에게 오프라인으로 보여주고 싶습니다. 한 가지 더요. 안드로이드 애플리케이션뿐 아니라 xmpp 프로토콜에서도 초보자입니다. 초급 모든 질문에는 감각이 있습니다Openfire에서 연결을 유지하면서 xmpp에서 사용자를 오프라인으로 표시하십시오.

답변

1

사용자가 오프라인 인 경우 서버에 사용할 수없는 상태로 보낼 필요가 있으므로 사용자의 항목에 게시됩니다. 이제 다른 사용자에게는 오프라인으로 표시해야하지만 세션이 열려 Openfire에서 메시지를 사용자에게 전달합니다. 이제 응용 프로그램이 포 그라운드로 오면 사용 가능하다는 사실을 다시 보낼 수 있습니다.

+0

고마워.하지만 나도 그걸 시도해 봤어. 내 존재가 오프라인으로 설정되면 메시지가 나에게 배달되지 않는다. .. –

+1

그러면 현재 논리로 갈 수 없다. 응용 프로그램이 끝나면 XMPP 연결을 끊어야한다. 배경 (X 분 이후). Openfire가 끝나면 푸시 알림 지원이 필요합니다. 그러나 공식 플러그 인은 없습니다. –

+0

openfire에서 GCM 및 CallBackOnOffline 플러그인은 어떻게됩니까? 사용해야합니다. –

관련 문제