IvanVolosyuk / diskusage

Automatically exported from code.google.com/p/diskusage
GNU General Public License v2.0
348 stars 62 forks source link

Version 4.0.2 only for Oreo? #50

Open Bubu opened 6 years ago

Bubu commented 6 years ago

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?

ildar commented 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?

rmzetti commented 6 years ago

minSdk is 26, target is 19 !!

Bubu commented 6 years ago

Ping @IvanVolosyuk, can you update the Manifest to fix this problem?

IvanVolosyuk commented 6 years ago

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.

ildar commented 6 years ago

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?

IvanVolosyuk commented 6 years ago

It is compiled using sdk 19 (target), but used on devices with sdk>=26 (min). There is no contradiction.

IvanVolosyuk commented 6 years ago

When it runs on devices with sdk 26 it runs in the compatibility mode which enables use of some deprecated functions.

ildar commented 6 years ago

Thanks! Love to learn things!

Bubu commented 6 years ago

Alright, thanks for the clarification. I'll have to see how to add this to fdroid, but should be doable :-).

tuxayo commented 6 years ago

@Bubu we should have 2 package on F-Droid then right?

@IvanVolosyuk which name would you like?

ildar commented 6 years ago

It's ok to have two versions with the same name.

ildar commented 4 years ago

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?

IvanVolosyuk commented 4 years ago

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.

PanderMusubi commented 2 years ago

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.

AdamPS commented 1 year ago

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.

PanderMusubi commented 1 year ago

Any update on this? Is a very useful app for which I don't know of any alternatives