As currently only 3.8% are below that mark and a lot of APIs are only usable on 19 or above I would highly suggest to update the minSdkVersion. Would that be fine for you @r10s?
i would not increase this without having a concrete reason :)
sorry, wrong button, didn't want to close this :)
But there is a concrete reason ;). Some code in the app is based on hacky workarounds, because of the low SDK version and some functions which are currently in the implementation phase require minSdkVersion to 19.
But there is a concrete reason ;)
i see :)
some functions which are currently in the implementation phase require minSdkVersion to 19.
which are these functions?
and aren't there ways to use them only if they are available?
in general, i would like to postpone the decision of raising the min-requirements a bit until we have more concrete information about the read usage in our user group.
i can imagine that these 3.8% can be much higher in some groups we may want to target.
I will collect some examples on Monday. It's often possible to work around the minimum API requirements by manually creating some stuff, but this often leads to faulty re-implementations of existing stuff, which can be dangerous especially in the security area.
I totally understand that raising the minimum requirements is never "good" in regards to the users base, but sometime it should be done. I'm totally fine to keep it for the moment, until we have some insights in regards to our user base.
perfect :)
Just some examples:
In general there are no critical ones for now I would say. I would think we can close this for now and after the user feedback / user test we have a look which Android version most of the users are using and if an update of the minSdkVersion could be fine. Okay for you @r10s ?
perfect, so we come back to this later. i'm fine with that. and thanks for the overview, this is very helpful :)
well, @angelo-fuchs has just fixed an issue for pre-lollipop, however, apart from that it SDK 14 seems to work, maybe with hacky-workarounds here and there, but, anyway.
some of the hacky-workarounds can be omitted by just staying closer to the ui the system provides, eg. https://github.com/deltachat/deltachat-android-ii/commit/7dd0d0a75af55341d04ea5f773922c21bfdcebc0 did not really add benefits but only additional constraints.
some compromises will be needed, however. eg. upcoming features as video recoding (#165), won't be supported by SDK<18 as supporting these version seems to require adding and maintaining a bunch of c-libraries.
in summary, wrt cuba and ukraine but also for installing on cheap phones in general, i have the feeling that it's worth keeping the current state, for a while. also as there is not much do do _currently_.
cc @adbenitez
While spreading DC I have found only one user that was using an Android version not even supported for Delta Chat v0.20. My personal opinion in this matter is that it is better the speed and reach on the user base, than removing support in favour of superfluous features or "fancy" UIs.
But even here in Cuba, I think most users have Android > API 19, as example: I am pretty poor, my phone has less than 500MB of RAM but comes with API 23 (6.0)
thanks, these are very useful information, indeed :)
Just for completeness: I use a 4 year old phone (that is not that old for my perspective) and it has API Level 17 (Android 4.2.2).
okay, we cannot definitely not lock out the phones of the maintainers :)
@r10s I disagree. If I'm the last (or so) user with such a phone, I'll get a new one.
well, maybe targeting sdk 17 is a compromise? not sure if this really helps, however.
maybe you can also upgrade? i (or jonas :) have a phone from 2010 (nexus s) that can run at least KitKat (android 19). this phone still works pretty good imo :)
I does not see this before but let me tell that in my area (Cuba) we are not a few using android 4.1 and getting a new phone is not easy(money).
And right now Delta Chat is spreading well.
So, raising the target SDK without a real need may affect a lot of users
Thanks
Yes, recently I realized that exists some people using old Android versions like Android 4.1, and the fact that Delta Chat is compatible with 4.0 turned out to be a really nice feature.
okay, i have the same feeling.
also, there is currently no need to refactor code or so, so we can just leave the minSdkVersion for now.
however, imo it is totally fine if these old versions do not get support for some new features as map-view or video-recording if it turns out that the used libs have some higher sdk-requirements.