-
-
Notifications
You must be signed in to change notification settings - Fork 463
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
Package ID changed #4128
Comments
@KaKi87 Thanks for reporting the bug. We have intentionally changed the package ID for the website and nightly APKs to fix #3933 in #3951. You can upgrade your existing app by downloading the new version of our app from the release section https://github.com/kiwix/kiwix-android/releases. Please download the |
Although adding APKs to GitHub releases is very much welcome, changing the package ID of an existing download URL is a breaking change, for everyone's upgrade workflow. In order to fix that while preserving the fix for #3933, I would like to suggest :
Thank you |
We don't publish updates for the old APK id, so I don't see the point of changing anything... We don't offer any garanty about APK filenames or URLs either so... but yes this is a breaking change we had to make to avoid confusions in the past. |
So you're saying that I have to either upgrade using Google, or re-download dozens of gigabytes of data, or remain on an outdated version ? |
@KaKi87 You are currently using the full version of the application(It has the capability to load sideloaded ZIM files from your storage), and the Google playStore version has the limitation of loading the sideloaded ZIM files. In the PS version, we just introduced file picker functionality for loading the sideloaded ZIM files from your storage. But in this approach, we are copying/moving the ZIM file from your storage to Kiwix's app-specific directory which can be deleted upon data clear or app uninstall. So upgrading from google playStore is not fit for you since there is some limitation. IMHO you should use our GitHub release section to upgrade your existing application to a newer version. Since this is the full version of our application and it has the same package ID as you have installed. So in this case, you don't have to redownload your existing ZIM files.
May I know where the existing ZIM files are placed in your storage? If they are not inside Kiwix's app-specific directory |
Oh, right, you said that, but I forgot about it because Kelson contradicted you by saying We don't publish updates for the old APK id 🤔
I downloaded from the app itself so I suspect that's where they are. |
@KaKi87, @kelson42 was talking about the website APK.
Okay, if you downloaded them from the application, then the ZIM files should be in |
Well, now, the GitHub releases APK changed too 😭
I just checked, and they're not : they're in Thanks |
And for that reason, this new release won't reach IzzyOnDroid either (where the RB verification builder complains not finding any APK by the defined file name patter, so no RB check either). Edit: I have to disable update checks for now, "demoting" Kiwix to monthly checks with our repo (to avoid downloading the same not-matching file over and again) and setting RB to manual, as I won't have much time to check and fix things before the end of the year. |
@KaKi87 Please move these files from this folder to another storage location before uninstalling the APK.
Sorry for the inconvenience. Now the official APK is |
@IzzySoft As we know, our official APK is Can you please configure your CD to recompile the project and publish the app on |
That's not an "inconvenience", that's unacceaptable. Breaking users' updates like this ? That's huge. Especially compared to the original issue and the fix I suggested. You killed a fly with a bazooka. |
@IzzySoft @KaKi87 We had to change the appid because apps become different (because of Google Policies), keeping naimg them with the same id started to really (legitimately) confuse users. This is indeed a breaking change, and we are sorry for the inconvenience, but we have no control on Google Policies and we still want to provide other ways to users to download/install Kiwix. All the rest, URL or filename are and should not be machine readable stuff. @MohitMaliFtechiz The only think I ask myself is if, at the end, if would not be smarter to rename |
Okay, but Google can only make requirements about the ID of the app you're submitting to the Play Store, not the one you're publishing on GitHub & kiwix.org, so why changing those too ? |
Already told you: they work differently in significant manner and we didn't want to have users mixing things (for example by having the play store interfering with a version which was installed manually). |
So you didn't change the Play Store app ID too ? |
No as the name change was as to NOT conflict with the Play Store listing. https://play.google.com/store/apps/details?id=org.kiwix.kiwixmobile |
I thought both were changed. Well, then I vote for the Play Store ID to be changed and the APK to be changed back. |
This gets more confusing everytime I look at it:
suggests to have something to do with Google (and their PlayStore). I'm not aware what policy should force existing listed apps to have their
What policy was it then? There are thousands of apps listed with the same
You cannot push APKs to either IzzyOnDroid or F-Droid.org, we pull them. Changing the packageName means it's a different app, so you force us to extra hoops setting up such a migration, too. Yes, the last variant of what you suggest there is possible – but is it also feasible? Estranging everyone around just for some unnamed Google policy (or Google abuse practices, not respecting the "installer" property)? You're sure this is not just a misunderstanding? If it's Google interfering, why not change the package name there, where the fault lies? Why instead causing trouble for those already avoiding Google for good reasons – instead of putting it with the troublemaker? Apologies if my writing sounds harsh – it's not meant to be, but indeed serious asking and strongly suggesting to consider. |
Nobody is forced, our will, reasons have been given.
Here too, reasons have been given, it was our case as long as the app were the same. Honestly, here we have chosen to impact the less users as possible.
Yes we are sure, this has been discuss in length for at least 12 months in different issues.
This is all considered, this is exactly because PS is hard to live with that we have done that move. |
Oh, that one I'd sign. It's why I left it behind about 10 years ago. Never regretted that step 😜 OK, going to initiate the switch. While on it, the scanner reports:
Easily avoided with a minor adjustment to your android {
dependenciesInfo {
// Disables dependency metadata when building APKs.
includeInApk = false
// Disables dependency metadata when building Android App Bundles.
includeInBundle = false
}
} For some background: that BLOB is supposed to be just a binary representation of your app's dependency tree. But as it's encrypted with a public key belonging to Google, only Google can read it – and nobody else can even verify what it really contains. More details can be found e.g. here: Ramping up security: additional APK checks are in place with the IzzyOnDroid repo. As the APK is not intended for Google anyway, could you please do that? Further, if there's a way to only build a single ABI (currently, 5 ABIs are built and we simply drop 4 of them), a hint would be appreciated; I could not find any ABI filter setup in your OK, that worked out – but the app still is no longer RB due to differences in #17 : (in Lorg/kiwix/kiwixmobile/di/components/DaggerKiwixComponent$KiwixComponentImpl;)
- name : 'provideFat32Checker$3_13_0_standaloneProvider'
+ name : 'provideFat32Checker$kiwix_standaloneProvider'
type : 'Ljavax/inject/Provider;'
access : 0x0001 (PUBLIC)
#18 : (in Lorg/kiwix/kiwixmobile/di/components/DaggerKiwixComponent$KiwixComponentImpl;)
- name : 'provideLocationManager$3_13_0_standaloneProvider'
+ name : 'provideLocationManager$kiwix_standaloneProvider'
type : 'Ljavax/inject/Provider;' This pattern repeats multiple times, with your build having a build:
- GRADLE_VERSION="$(sed -rn 's/distributionUrl.*gradle-([0-9.]+).*\.zip/\1/p' gradle/wrapper/gradle-wrapper.properties)"
- sed -r 's/return baseVersionCode \+ daysDifference/return 231255/' -i buildSrc/src/main/kotlin/VersionCodeGenerator.kt
- sed -r 's/val abiCodes.+$/val abiCodes = mapOf("armeabi-v7a" to 5)/ ; s/isUniversalApk = true/isUniversalApk = false/' -i buildSrc/src/main/kotlin/plugin/AppConfigurer.kt
- git clone https://github.com/obfusk/gradlew.py.git
- gradlew.py/gradlew.py --version $GRADLE_VERSION -v assembleStandalone -PdisableSigning Any hints on how to fix that? Thanks in advance! |
@kelson42 I agree with this. Also, our GitHub release has this new name which indicates this change. |
@IzzySoft We have disabled this in #4057, and will merge soon.
For this, we can use the direct command to generate the one abi APK like |
Thanks! LGTM (as at IzzyOnDroid we only care about the APK, and the AAB is only going to PlayStore, it's fine to leave it in with the latter).
Wonderful, thanks – noted and will be used when trying the next build. So the only remaining issue is |
Describe the bug
The package ID for the APK at https://download.kiwix.org/release/kiwix-android/kiwix.apk was
org.kiwix.kiwixmobile
, but now it'sorg.kiwix.kiwixmobile.standalone
.Expected behavior
The package ID wouldn't have changed.
Steps to reproduce the behavior:
Screenshots
Environment
Logs
None
Thanks
The text was updated successfully, but these errors were encountered: