Inability to Login to 2.37.8, 2.38.1.1 with older DHIS2 Android Versions

Basically the functionality is such that:

2.4.3
Handles CategoryOptionCombos with multiple categories just fine. Longer for initial load, but no major lag in programs.
Logs in fine into 2.35.14
Does not log into 2.37.8
Does not log into 2.38.1.1
2.5.2
Handles CategoryOptionCombos with multiple categories just fine. Less load for initial load, but more lag in programs during entry.
Logs in fine into 2.35.14
Logs in fine into 2.37.8
Does not log into 2.38.1.1
2.6.3
Does not function with CategoryOptionCombos with multiple categories.
Logs in fine into 2.35.14
Logs in fine into 2.37.8
Logs in fine into 2.38.1.1

Because of the differences in functionality that exist between these 3 versions, we have teams working in both 2.4.3 and 2.5.2 (each in multiple countries, each with quite a high level of scale). We’d love to be able to use these versions until the latest version gives us the optimum experience/allows us to enter in data effectively. Is there a way we’ll be able to log in with 2.4.3 (in 2.37.8 or 2.38.1.1) and 2.5.2 (in 2.38.1.1) with some kind of workaround?

Error Message:

Have created a ticket for this, as well, if useful:
https://dhis2.atlassian.net/browse/ANDROAPP-5022

Hey @Matthew_Boddie

I believe this is hard coded in the App/SDK and there is no way to bypass this at the moment. In the end it make sense as we have not tested old Apps in new version of the server as API calls might have changed. Probably @vgarciabnz and/or @marcos.campos can correct me if I am wrong.

I can think of a way to bypassing this via transforming the request-response in case you are using a web proxy, probably you are (Apache / NGINX) but this would be a hack and not supported by us in any case. I haven’t tested but you might want to investigate that if you are willing to take the risk. Another way would be compiling the App removing this limitation but again, we cannot support that.

Best.

1 Like

Hey @Matthew_Boddie,

this constraint is hardcoded in the App because we cannot guarantee that the application works properly with versions that were not released at that moment. Actually, there was a change in User payload in 2.38 that wouldn’t make possible to login with 2.4 or 2.5 even if you were able to hack the version returned by the server.

As a summary, the compatibility is:

  • 2.4.x: <= 2.36
  • 2.5.x: <= 2.37
  • 2.6.x: <= 2.38

What worries me is that 2.6.3 cannot log into 2.37.8 or 2.35.14, this is not expected at all. Could you give us more info about this? Or some guidance to reproduce the issue.

1 Like

@vgarciabnz apologies—2.6.3 does log into each server, that was a large mistake on my side and I’ve edited the original posting.

Thanks Jaime for the context here and @vgarciabnz for clarification on if the hacks would be functional if we would endeavor to risk them.

Because of the inability to run pre-2.6.3 android on 2.38.1.1, we’re going to consider 2.37.8 as our upgrade candidate, and try and use 2.5.2 for our data entry. Hoping that gets us to full functionality!

It has been awhile, so if I can better describe our issues with 2.6.3 in some way, very very happy to do so! Would love to be able to use it for all of our programs.

Oh, good to hear that 2.6.3 logs in fine into any version.
I am not really aware of the issues with the CategoryOptionCombos with multiple categories in 2.6.3, any information about this would be helpful. Maybe @Pablo can help on this as well.

2 Likes

Looks like its been fixed in 2.7, so I’ll be eagerly awaiting this release!
https://dhis2.atlassian.net/browse/ANDROAPP-4870

2 Likes