There's a bunch of changes, required, to move to the latest SDK:
1. Update AAR's. The matrix-sdk.aar in this commit was built from the
v0.9.14 tag of the matrix-android-sdk git repository. olm-sdk.jar is
pulled from the same place.
2. Updates to the build scripts. matrix-android-sdk added kotlin as a
dependency, moved to okhttp3, added io.realm, and so on.
3. Code modifications to support new SDK itself. The changes, here, are
a grab bag, and you're best off just reading the commit.
Of particular note, here, is that LoginRestClient.loginWithUser takes a
device name *and* a device ID, now (the previous API only took a device
name). As a wicked had, right now, I'm just using the name as the ID,
but I have no doubt that's wrong and this should be cleaned up to
include a randomly generated, persisted device ID, as I believe this is
used by Synapse to track login sessions.
Implemented support for MMS messages, including a variety of formats
of image and video. Works by observing changes to content://mms-sms,
parsing out the new MMS contents, uploading them as assets to
the Matrix server, and posting a new image or video message to the room.