我正在使用 asmack api 为 Gtalk 创建一个聊天应用程序,我想在用户离线时获取消息,但是由于 ServiceDiscoveryManager 中的一些问题以及它说该功能未实现(501)并试图实现所有其他用户有同样问题的东西,但现在我得到了这个错误。我正在发布代码和 logcat。任何帮助表示赞赏。
ConnectionConfiguration connConfig = new ConnectionConfiguration(
host, Integer.parseInt(port), service);
connConfig.setSASLAuthenticationEnabled(true);
connConfig.setSendPresence(false);
connection = new XMPPConnection(connConfig);
connection.connect();
connection.login(username, password);
ServiceDiscoveryManager sdm= ServiceDiscoveryManager.getInstanceFor(connection);
mOfflineMessageManager = new OfflineMessageManager(connection);
offlinemsgs = mOfflineMessageManager.getMessageCount();
这是我在登录后调用离线消息的代码,下面是 logcat 错误中的响应:
03-16 11:26:53.871: W/System.err(325): feature-not-implemented(501)
03-16 11:26:53.881: W/System.err(325): at org.jivesoftware.smackx.OfflineMessageManager.getMessages(OfflineMessageManager.java:210)
03-16 11:26:53.881: W/System.err(325): at com.apache.android.xmpp.MainScreen.getOfflinemessages(MainScreen.java:911)
03-16 11:26:53.881: W/System.err(325): at com.apache.android.xmpp.MainScreen$LogIn.doInBackground(MainScreen.java:612)
03-16 11:26:53.881: W/System.err(325): at com.apache.android.xmpp.MainScreen$LogIn.doInBackground(MainScreen.java:1)
03-16 11:26:53.881: W/System.err(325): at android.os.AsyncTask$2.call(AsyncTask.java:185)
03-16 11:26:53.881: W/System.err(325): at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
03-16 11:26:53.881: W/System.err(325): at java.util.concurrent.FutureTask.run(FutureTask.java:137)
03-16 11:26:53.881: W/System.err(325): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1068)
03-16 11:26:53.881: W/System.err(325): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:561)
03-16 11:26:53.891: W/System.err(325): at java.lang.Thread.run(Thread.java:1096)
请对此提供帮助,试图从很多天获得解决方案,但找不到任何解决方案。