XilinJia / Podcini

Open source podcast instrument for Android in Kotlin with media3, supporting channels, playlists and single media from YouTube and YT Music.
GNU General Public License v3.0
151 stars 6 forks source link

IzzyOnDroid listing #82

Open IzzySoft opened 3 weeks ago

IzzySoft commented 3 weeks ago

Checklist

App version

6.3.7

Where did you get the app from

Other

Problem you may be having, or feature you want

Your APK is listed at IzzyOnDroid, and also has the badge on its Readme – thanks! However, there's a problem: APK size is over 60 MB now, and the per-app size limit at IzzyOnDroid is 30 MB. So it no longer fits.

Suggested solution

Consider providing per-ABI builds. Native libs are stored (i.e. without compression) inside the APK. So just the native libs of the 2 x86 variants sum up to ~30 MB already. Sticking to a single ABI (e.g. arm64) would bring the size back below 30 MB.

Thanks in advance!

Screenshots / Drawings / Technical details

No response

dyeray commented 3 weeks ago

The app is already on the main f-droid repo. Does it make sense to stay on IzzyOnDroid too?

IzzySoft commented 3 weeks ago

Does it make sense to have it on Amazon then? Or on OpenApk? :wink: Depends on your point-of-view. There's a basic comparison at the top of our FAQ, maybe that helps you decide. But of course, if you say so we can remove it from IzzyOnDroid – the authors' wishes are respected.

XilinJia commented 3 weeks ago

The app is already on the main f-droid repo. Does it make sense to stay on IzzyOnDroid too?

As many people prefer IzzyOnDroid over the main F-droid, I respect their choice. To me, at least I like the promptness of a release apk gets on IzzyOnDroid. F-Droid tends to have a delay.

@IzzySoft , I will check about providing per-ABI builds. You only need arm64?

XilinJia commented 3 weeks ago

@IzzySoft , the listing on your site appears to have a mis-match of versions. I searched Podcini and it shows version 6.3.7 here https://apt.izzysoft.de/fdroid/index.php

Then I click on Details, and it shows 6.3.4: https://apt.izzysoft.de/fdroid/index/apk/ac.mdiq.podcini.R

How come?

IzzySoft commented 3 weeks ago

You only need arm64?

At least currently, IoD can only pick 1 APK – so yes, arm64 would be fine and sufficient.

Then I click on Details, and it shows 6.3.4

Sorry, I cannot reproduce. For me it shows 6.3.7 there as well:

image

Maybe a caching issue in your browser?

XilinJia commented 3 weeks ago

In deed it's a cached version (but why?). I clicked reload of the detailed page and got 6.3.7

IzzySoft commented 3 weeks ago

The wonders of technology :see_no_evil: But glad this one is resolved at least. Remains the sizy one. Please give me another ping once the arm64 APK is available. Thanks!

XilinJia commented 3 weeks ago

@IzzySoft I tried building a arm64 apk by adding a "splits" section in build.gradle, but wasn't successful. Do you have some advice on how to correctly do it?

IzzySoft commented 3 weeks ago

Unfortunately not, I'm no Android dev… But maybe a working example can help? Here's one from another Kotlin app using split APKs. Setting isUniversalApk = false should spit out separate APKs, if I understood that correctly. But no idea how to have both. I usually take sed to adjust it to the APK I need for the RB run…

obfusk commented 3 weeks ago

Setting isUniversalApk = false should spit out separate APKs, if I understood that correctly.

That setting enables generating a universal APK in addition to per-ABI APKs.

IzzySoft commented 3 weeks ago

Thanks Fay! So setting that to false just disables the "fat build" (aka UniversalApk with all ABIs), true enables it – and in both cases, per-ABI-APKs are produced as well? And if one wants the "fat build" only, isEnable = false would take care for that?

obfusk commented 3 weeks ago

See https://developer.android.com/build/configure-apk-splits#configure-abi-split

XilinJia commented 3 weeks ago

Thanks everyone for the help. The arm64 is uploaded.

IzzySoft commented 2 weeks ago

Thanks! As 6.4.0 was already pulled, the arm64 APK will be introduced here with the next release then:

ApkMatch: /free.*arm64/i
XilinJia commented 2 weeks ago

Thanks! As 6.4.0 was already pulled, the arm64 APK will be introduced here with the next release then:

ApkMatch: /free.*arm64/i

Sorry, can you be clearer? What should I do with: ApkMatch: /free.*arm64/i

IzzySoft commented 2 weeks ago

Apologies: that's the pattern the updater here uses to match the APK it should pull from your releases. It's a regular expression, matching the current arm64 APK you've just provided. So I named it here to show the relevant part of the file name that should be there even if you decide to slightly rename (which would not break the updater as long as that regex still matches, e.g. Podcini.R_free_release_6.4.0_arm64-v8a.apk (current) would match, Podcini.R_release_free_6.4.0_arm64-v8a.apk as well.

linsui commented 2 weeks ago

The apk url is changed and the reproducible build failed. Could you please keep the old url?

XilinJia commented 2 weeks ago

@linsui you mean free apk file name?

linsui commented 2 weeks ago

Yes.

XilinJia commented 2 weeks ago

OK, renamed for 6.5.1.

For future, as @IzzySoft can also accept, I will maintain the pattern as: Podcini.R_release_free_6.4.0 rather than Podcini.R_free_release_6.4.0.

linsui commented 2 weeks ago

Izzy only needs the arm64 apk and F-Droid only needs the universal apk.

XilinJia commented 2 weeks ago

OK, Podcini.R_release_free_6.4.0 pattern is the same as before for F-droid. Since Izzy accepts the pattern, it's better I keep some consistency.