emavgl / oinkoin

Oinkoin is a flutter app for helping you managing your expenses. No internet required.
GNU General Public License v3.0
156 stars 9 forks source link

Add the armeabi v7a app for fdroid #120

Closed Thewisem closed 5 months ago

Thewisem commented 6 months ago

Just as title described. The app in fdroid is incompatible with armeabi v7a. Since you already build it in your github. Could you post that as well on fdroid.

emavgl commented 6 months ago

Hi,

Just wondering, could it be an option for you using

https://github.com/ImranR98/Obtainium

For fetching the release directly from github?

Thewisem commented 6 months ago

Oh thanks. Just wondering why isn't the armeabi v7a build on fdroid?

emavgl commented 6 months ago

Simply because, I did not figure out how to specify multiple architectures apk in the format fdroid expects, and since the majority of the devices are compatible with ARM64, I went with that.

Unfortunately at the moment I am on vacation and I don't have much time to look at it. I promise I'll look at it when possible.

Of course, any help is appreciated

Thewisem commented 6 months ago

OK thanks for looking into it. I am a new user and I really liked your app interface. It has all that I need. :)

licaon-kter commented 5 months ago

yes it can be done and x86_64 too :)

licaon-kter commented 5 months ago

the issue is that versionCode per arch should not be as Flutter sets it: https://github.com/flutter/flutter/blob/3.22.1/packages/flutter_tools/gradle/src/main/groovy/flutter.groovy#L1176-L1185

So instead of abiVersionCode * 1000 + variant.versionCode having ARCH identifier first

it should have it at the end: variant.versionCode * 1000 + abiVersionCode

your current 7055 for armv7, 8055 for arm64 and 10055 for x86_64 should be 55007, 55008 and 55010 I guess, although I can exactly find where you set these

emavgl commented 5 months ago

Sorry I did not get this line:

although I can exactly find where you set these

I understand that it seems a problem with the versionCode, I would be ok for me changing it (if flutter allows it), and it shouldn't be a breaking change since the resulting versionCode is higher than the current one.

licaon-kter commented 5 months ago

Typo "I can't" :)

emavgl commented 5 months ago

I did not do any special overwrite of the formula you wrote above and that flutter uses. It seems it is possible to overwrite such formula.

However, also in the official android documentation the formula flutter uses seems to be confirmed: https://developer.android.com/build/configure-apk-splits#configure-APK-versions

Why F-Droid requires a different formula instead?

licaon-kter commented 5 months ago

It seems it is possible to overwrite such formula.

yes, many apps do

However, also in the official android documentation

that's more like the "Google Play" documentation, they don't care about versionCode, except that it should be "bigger"

Why F-Droid requires a different formula instead?

because all the versions live in one file https://gitlab.com/fdroid/fdroiddata/-/blob/master/metadata/com.github.emavgl.piggybankpro.yml that's sorted by versionCode

with the "google way" when adding a version you'd edit in 3 different parts of the file, having ABI at the end of the number is easier for the humans :)

emavgl commented 5 months ago

fyi: @licaon-kter

I have changed the formula and the APK have now:

Is that good now?

I guess the com.github.emavgl.piggybankpro.yml needs to be updated accordingly. Could you please guide me on how?

licaon-kter commented 5 months ago

Yup, will take care, brb

licaon-kter commented 5 months ago

done https://gitlab.com/fdroid/fdroiddata/-/commit/aa75852a6b0cb81abb4a58961238abe94e95d463

emavgl commented 5 months ago

Thank you so much! Closing this issue then.