yamin8000 / Owl2

🦉 Owl2/جغدک is a simple android application for OwlBot dictionary. (a reincarnation of https://github.com/yamin8000/Owl written using Compose)
GNU General Public License v3.0
44 stars 2 forks source link

F-droid version #93

Open Monirzadeh opened 1 year ago

Monirzadeh commented 1 year ago

Hi Can we have that on F-droid?

yamin8000 commented 1 year ago

Hi Can we have that on F-droid?

I'm very keen to put this app on F-Droid, however, the API key is git ignored and is only available in my system.
One solution is to change the app in a way that doesn't require a single API key and each user requests a key from Owlbot dictionary or somehow put my API key through some environmental variables when it's compiled in GitLab and F-Droid.

IzzySoft commented 1 year ago

@yamin8000 meanwhile, can you please make sure that the APK attached at the release matches the release name? Currently, the one at 1.3.2 identifies as 1.3.0 (and thus my updater fetches it each day just to throw it away as it's already here). Is it even the correct APK, or did you accidentally attach the wrong one?

yamin8000 commented 1 year ago

@yamin8000 meanwhile, can you please make sure that the APK attached at the release matches the release name? Currently, the one at 1.3.2 identifies as 1.3.0 (and thus my updater fetches it each day just to throw it away as it's already here). Is it even the correct APK, or did you accidentally attach the wrong one?

I don't have access to my PC currently so I'm not quite sure but I just checked that the apk of the free one uploaded for 1.3.2 release is indeed 1.3.2.
Source is 1.3.2 too.
What do you exactly mean it identifies as 1.3.0?

IzzySoft commented 1 year ago

Haha, wrong error… Still an error. I just dug into it:

Take a closer look at the https://github.com/yamin8000/Owl2/releases/download/1.3.2/app-free-release.apk please, it has the wrong package name! It should be io.github.yamin8000.owl.free, but it is io.github.yamin8000.owl. Versioning is correct, but as it has the wrong package name, it's assigned to the io.github.yamin8000.owl (which still exists but has updates disabled, else I would have noticed due to collision), so io.github.yamin8000.owl.free is not updated, and on the next round the game starts over :see_no_evil:

So it's not the version that needs to be fixed, but the package name, if you please? Or is this intended (despite of explicitly changed with v1.3.0), so I shall simply replace io.github.yamin8000.owl instead? Would work as well.

IzzySoft commented 1 year ago

PS: while keeping the old package name would work as well, it might cause some confusion to those having switched as the description said so:

NOTE: This flavor of the app will no longer be updated here. It is continued with its free flavor (same functionality), so please switch to that instead.

Decision is yours, though.

yamin8000 commented 1 year ago

Haha, wrong error… Still an error. I just dug into it:

Take a closer look at the https://github.com/yamin8000/Owl2/releases/download/1.3.2/app-free-release.apk please, it has the wrong package name! It should be io.github.yamin8000.owl.free, but it is io.github.yamin8000.owl. Versioning is correct, but as it has the wrong package name, it's assigned to the io.github.yamin8000.owl (which still exists but has updates disabled, else I would have noticed due to collision), so io.github.yamin8000.owl.free is not updated, and on the next round the game starts over 🙈

So it's not the version that needs to be fixed, but the package name, if you please? Or is this intended (despite of explicitly changed with v1.3.0), so I shall simply replace io.github.yamin8000.owl instead? Would work as well.

OK. Now I understand what the actual problem is. After I created flavors for my app I specified a suffix for the free version and released a new free version with that suffix and another version with ads with the old io.github.yamin8000.owl, however, later I decided to remove the suffix and released a version with no suffix.
That's a problem on my side and this inconsistency created confusion for you. So long story short you should discard the io.github.yamin8000.owl.free and update io.github.yamin8000.owl with the free version flavor which in new version has the right version and package name.

yamin8000 commented 1 year ago

PS: while keeping the old package name would work as well, it might cause some confusion to those having switched as the description said so:

NOTE: This flavor of the app will no longer be updated here. It is continued with its free flavor (same functionality), so please switch to that instead.

Decision is yours, though.

I'm sorry for the mishap, but io.github.yamin8000.owl.free was a mistake (1.3.0) and was reverted in the next versions.

IzzySoft commented 1 year ago

OK, then I'll revert to the old package name here. As you never told me, I could not have known :wink:

PS: Done – and now the update check again works as expected:

io.github.yamin8000.owl: looking for 'https://api.github.com/repos/yamin8000/Owl2/releases'
io.github.yamin8000.owl: checking tag '1.3.2'
io.github.yamin8000.owl: lastRelNo set to '1.3.2', checking for files
io.github.yamin8000.owl: Upstream file date (2023-04-25 20:35) not newer than ours (2023-04-30 05:47), skipping.
io.github.yamin8000.owl: returning local appdata as ['1.3.2','',0]
io.github.yamin8000.owl: 1.3.2 up-to-date.

:+1:

(the "local file date" is as new due to the renaming having touched the "ctime")

yamin8000 commented 1 year ago

Hi Can we have that on F-droid?

I'm very keen to put this app on F-Droid, however, the API key is git ignored and is only available in my system. One solution is to change the app in a way that doesn't require a single API key and each user requests a key from Owlbot dictionary or somehow put my API key through some environmental variables when it's compiled in GitLab and F-Droid.

@IzzySoft I managed to move API keys from a git ignored file to system environment variables and then build.gradle and then BuildConfig class, theoretically app can be compiled by anyone who can generate an OwlBot dictionary API key and an API Ninja key.

yamin8000 commented 1 year ago

Oh! Never mind. I just realized Owlbot will be down due to copyright issues the next day.