How do I get archived Messages for a group chat

I’ve to correct myself here. Smack has already an API to query different MAM archives. Just use MamManager's getInstanceFor(XMPPConnection connection, Jid archiveAddress) method, and use the MUC address as archive address.

And no, queryArchive(Jid) does not what you want (as explained in the javadoc).