-
-
Notifications
You must be signed in to change notification settings - Fork 19
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
versionCode #13
Comments
Hi! I can't see where the app is setting But in summary the format is: <version>-<optional-identifier>+<version-code> And the Line 4 in a9e1548
And the subsequent version Line 4 in fde2ee4
The version number is passed to the kanade/android/app/build.gradle Line 54 in fde2ee4
If you are talking about this specific lines: kanade/android/app/build.gradle Lines 14 to 22 in fde2ee4
the null verification only happens we do not specify the version code on I also tried to install the old version and then replace (without uninstalling the old one) with the latest one on Android 11 and it worked as expected. Please, let me know if I am missing something, the same applies if you're having trouble to install or update the app, thanks! |
I've just run
I've seen the
Yes, with Can you please check the attached APK yourself to confirm? |
I did release a new version Since the app id was updated there's no difference between versionCode: 2 and 1 for this release in specific (because it will be like a new whole app). But between keeping the continuity of the versions and creating a new versioning from the new app id, I did choose the first option; sorry for this issue. And since you're publishing to your repository, you can use this new app id: But this will not impact any feature, and thanks for letting me know about this issue! I'll now update it every release and create an CI to make it automatic.
It was really buggy and the versionCode was set to |
That makes it an entirely new app then (users cannot simply update their install but must be aware of the new version and install it manually). You're aware of that? Is this intentional (reading between the lines it seems the answer is "yes")? Shall I simply replace the "old one" in my repo then? But glad you were able to get the versioning fixed! As soon as I know whether to replace the original one I will take the appropriate action, just let me know. With the app added to my repo only very recently, I think replacing would be OK (were it listed for several months already, we might have needed a "parallel listing" to get users informed about the switch). |
Yes.
Yes.
Yes, please. This was an unlucky change I needed to made some months ago, but now it's stable. Thanks! |
OK, then let's go:
Hm, that split-APK issue again. If I put that in, users will have no chance to upgrade to arm64 one day:
Why is armv7 having the higher
and instead of 3 versions I can only keep 1 (per-app limit: 30M). 2 would fit if x86 would be omitted I guess (I just see that was the original setup as the previous releases did not have any per-ABI APKs). Should you feel it worth the trouble and manage to have a ARM only (armeabi + arm64, but no x86) APK without "prefixed versionCode" just let me know: being "on base" now a switch should be possible anytime. |
I recommend using the universal apk, the abi-specific apks will be available to be downloaded directly from the source (this repository) only for convenience and maybe I'll omit in the future although unlikely to happen (let me know if it is a issue for your repository).
I think this is an intended behavior, because I went through the Android docs to find what actually what a I also found someone mentioning this 'issue': flutter/flutter#39817 (comment). But I get your point, someday people will be forced to update the app to a non-universal abi which will lead to installation issues (due to the incompatible architectures).
Arbitrary range values, it's not that the version is "higher", it is required to avoid duplicating the
If the limit is 30mb we will need to rely to the universal apk (even the appbundle solution can't help in this case, because it has the same size of the universal apk, the difference is noticed only by the final user).
Nah, as I said before, your repository can rely only on the universal apk, the specific abis will be there only for convenience and maybe I'll omit in the future, but the univesal apk will be always available as |
No, no issue – I've simply told my updater to ignore them (RegEx on file names, so it will work as long as you keep that nameing pattern with the ABIs inside).
I get the idea. But why does armeabi get a higher prefix than arm64? Consider I'm using an arm64 device and initially installed the armeabi variant (e.g. because the arm64 was not available at the time). Technically, I could update to arm64 – but with that having the lower versioncode, Android won't let me do that. So I've picked the universal now for this very issue (can be updated to any of the ABI specific ones if we want to switch).
Sorry, but it is: 4002 > > 3002 > 2002 > 1002. Android doesn't know of the prefix, it just sees the integer.
Sure not, as F-Droid doesn't support that (yet) 😉 As for the issue I see with only having 1 version in the repo, let me explain it by example: Today my client updated its index. 2h later, your app gets updated in the repo and a new index is created. Another 2h later I see your app in my client and want to install (remember, I'm still having the old index). Install will fail as the linked APK is no longer there. I'm frustrated and move on, ignoring your app. Or I start complaining to whomever that "things are broken". This situation is not as rare as you might think 😉 Thus having 2+ versions is a good idea. Not strictly required, but recommended. |
Ok, nice; so the only left pending issue is the version count (recommended 2+), right? I can make some implementations throughout the next week and then release ( Let me know if it applies as solution. |
Always larger than with the previous release. How much larger is up to you – just remember you can never ever decrease, so better don't increase too much 😉
Sounds good to me, thanks! |
Hi! I did finish pre-release. The current apks of this release are:
So here we are:
Since it is a pre-release, let me know if there's anything that is still missing or wrong, so we can fix before the release, thanks. |
Fits. YAML on my end has: ApkIgnore: /(arm64|armeabi|x86)/i which matches the 3 per-ABI APKs but not the universal one – so the latter would be pulled while the former 3 would be ignored. LGTM 😄 |
Thanks for confirming! I did set as latest release rn. If there's anything else you wanna discuss, just ping me. |
Perfect – that worked out fine:
If you're interested, we could work on that last line. I could offer sending a PR with what I've set up here, so you can maintain your metadata (description, screenshots etc) using fastlane structures (metadata only, no binaries needed) in your repo yourself and such are in control of how your app is presented. |
Seems pretty interesting! I'll be waiting for your PR while reading about fastline. |
There you go! |
And please don't break fastlane. |
PlayStore is stupid. "Icon must be…" => a square with at least 48x48px and max 512x512 – so 96x96 is perfectly fine. Well, my updater will downsize it to that anyway if it gets too large (exceeds 20kB) 🤷♂️ Screenshots: Well, cannot hurt. Rumors have it the iPhone 25 will have the same width as the iPhone 6, but will be 20 times as long – we certainly don't want such screenshots, right? 🙈 Thanks! |
Perfectly! I did adjust the action to skip PlayStore lang code checks and did revert the Is there anything else? |
Thanks a ton! Wow… And no, I'm currently not aware of anything else. Those shortdescs just turned up when I improved my local scanners to cover that topic. Looks like we've (well, you've) covered everything now, right? Time to close the issue? 😃 |
I see, are those local scanners open-source? Throughout the issue development I was wondering what your magic tools looks like; but if it's not, no problem.
Happy to hear that, man! Any other warning or issue with the app or repository, feel free to open another issue. Feel free to close this issue as your wish. |
Most of them can be found in my corresponding repo, though some parts are just local scripts building on top of that. But for the shortdesc part it's just a simply local snipped walking all the
Happy to state it 😄 As for the rest: will do. Thanks for your fast response and tackling! |
I see 2 versions being tagged, but the newest one still identifies with
versionCode: 1
. Can you please increase that with each new release? It's what Android uses internally to tell versions apart. Thanks!The text was updated successfully, but these errors were encountered: