Hi @Flow,
was thinking and experimenting about this and it should not be full Jid since it will crash the app if the other end is offline at the moment of checking (with service not available). SO I think it registers the anouncement once and the other clients reads it there.
I guess a fix would either be switching the argument to fulljid, or probably even better (considered we are talking about offline capable end-to-end encryption) create two methods. One named contactSupportsOX(BareJid) which returns true if there is a public key available and one deviceAnnouncedSupport(FullJid) which returns true if the specific resource announced support.
Hi Paul,
will it take long to have a new alpha with the changes? I’m testing alpha5 and so far the only things that is not working is OX-IM. Would be happy to test that too!
What you want to do is change deviceAnnouncesSupport(BareJid jid) to entityAnnouncesSupport(Jid jid) (note the changed argument type) and rename contactSupportsOxInstantMessaging(OpenPgpContact|BareJid) to contactAnnouncesPgpKey(OpenPgpContact|BareJid).
Basically just make sure that gradle check passes and try to run the integration tests successfully to make sure not to break stuff. Also if the functionality is not yet tested, then some junit / integrations tests are warmly welcomed