Open Bubu opened 6 years ago
https://github.com/IvanVolosyuk/diskusage/commit/d316eb2a4ab595d497819db763f58664edf7424a Must be a confusion here: target versus minSdk. @Ivan , can you please check/confirm/fix?
minSdk is 26, target is 19 !!
Ping @IvanVolosyuk, can you update the Manifest to fix this problem?
I actually made a split in the sources. Master branch is for minSdk>=26, api25 branch is for older versions. Play Store now have 2 apks uploaded. The code handling multiple quirks of different versions of android became pretty complex and fragile I decided to fork implementation to avoid additional breakages in older devices.
Target sdk 19 is intentional otherwise Action.VIEW intents for files no longer work due to requirement to use DocumentsProvider API. There is no obvious way I know to get Documents URI from file path without ugly hacks.
Ivan, thanks for working on this app, it's very important utility for us users! I got it about your choice of the SDK versions. But do I understand it right that build environment will use minSdk when targetSdk is lower?
It is compiled using sdk 19 (target), but used on devices with sdk>=26 (min). There is no contradiction.
When it runs on devices with sdk 26 it runs in the compatibility mode which enables use of some deprecated functions.
Thanks! Love to learn things!
Alright, thanks for the clarification. I'll have to see how to add this to fdroid, but should be doable :-).
@Bubu we should have 2 package on F-Droid then right?
@IvanVolosyuk which name would you like?
It's ok to have two versions with the same name.
Ivan, I'm sorry just want to get back to this (necro) post:
When it runs on devices with sdk 26 it runs in the compatibility mode which enables use of some deprecated functions. Please correct me if I'm wrong: if using sdk=19 as the builder (as the target SDK) then you simply can't use any APIs from sdk [20..26], as it simply doesn't have it. As well I don't see any external jar-s requiring sdk raise. So I'm kinda lost of what's the reason raising minSdk and cutting off users with older Android?
I made a split of APKs: 3083 release is for 1-25 API versions 4002 release is for 26+ API versions 3083 needs a system.jar which is a few classes from AOSP android to tap into system private APIs to get installed app sizes. At API 26 Google did some changes which broke DiskUsage, so I have to do several fixes, which was risky for older API versions. I also wanted to remove system.jar. So I frozen 3083 version, removed the system.jar and made fixes for API 26 devices. This way I didn't have to deal with angry users of old devices (asking me why did I broke them) and I made angry users of API 26+ devices a bit more happy.
On Thu, Feb 13, 2020 at 4:09 PM ildar notifications@github.com wrote:
Ivan, I'm sorry just want to get back to this (necro) post:
When it runs on devices with sdk 26 it runs in the compatibility mode which enables use of some deprecated functions. Please correct me if I'm wrong: if using sdk=19 as the builder (as the target SDK) then you simply can't use any APIs from sdk [20..26], as it simply doesn't have it. As well I don't see any external jar-s requiring sdk raise. So I'm kinda lost of what's the reason raising minSdk and cutting off users with older Android?
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.
Can you make a tagged release for F-Droid to pick up and trigger a new build? Currently, the older version 3.8.0 from 2017 is in the F-Droid store.
It would be great to get this fixed please if possible - currently I have to use Google Play to get the newer version (yuck😃).
Many thanks.
Any update on this? Is a very useful app for which I don't know of any alternatives
I was about to update the app for F-Droid (https://gitlab.com/fdroid/fdroiddata/issues/977) when I noticed that the new version has minSDK=26. This prevents installation on every device not running Oreo, was that an intended change?