我正在创建一个Android应用程序,它还具有使用aSmack和ejabberd的集成XMPP聊天功能。我使用用户的应用程序登录名和密码登录XMPP服务器。 那么如何在用户更改其应用程序密码的情况下使用aSmack更改密码
答案 0 :(得分:2)
首先,根据Smack API documentation“从4.1开始,Smack能够在Android上本机运行且未经修改。”
您可以使用AccountManager类方法getInstance(XMPPConnection connection)
来获取实例。该对象有一个方法changePassword(String newPassword)
,您可以使用该方法更改帐户密码。
还有其他有用的方法,例如createAccount(...)
等......
确保上述内容适用于您使用的XMPP服务器。
请注意,通常并非所有XMPP服务器实现都提供XMMP规范中描述的所有功能。您应该始终查看服务器文档。
答案 1 :(得分:1)
除非你为它创建一个插件,否则无法做到。
替代方法是删除用户并再次创建他。
另外一个替代品可以是刚结婚的插件https://www.igniterealtime.org/projects/openfire/plugins/justmarried/readme.html 此插件更改用户名。您可以修改插件以更改pssword。注意:刚结婚的插件也会删除用户并重新创建它,但会恢复所有数据