Skip to content
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

Share and update custom APK without having to go through Google play #61

Closed
Popolechien opened this issue Apr 20, 2020 · 11 comments
Closed

Comments

@Popolechien
Copy link
Member

It would be nice to be able to generate a custom app (like we currently do here) but without going through the Playstore.

At the end of the process we would have a working apk that can be shared directly with users.

@kelson42
Copy link
Contributor

kelson42 commented Apr 20, 2020

@macgills Maybe this is just a documentation thing?

@macgills
Copy link
Contributor

This is not feasible currently I would say.

We currently upload the zimfile to the play listing as an expansion file, when a user tries to download the app google gives them the apk and zim file in the 1 download.

There is a fallback mechanism where we download the file from our own servers on launch of the app if we can't find the google file.

I think what is desired here is the offline distribution version which is not yet supported from kiwixlib.

If we were to also publish our apks to download.kiwix then the users would have to launch the app to begin the zim download

@gouri-panda
Copy link
Collaborator

@kelson42 I think this is feasible now with the play asset. Unlike the expansion file, we can download it in real-time.

@kelson42
Copy link
Contributor

@gouri-panda OK, could you please elaborate about how it would work and explicit the differences at both technical and end-user level between thatbkind of version and the current playstore version?

@gouri-panda
Copy link
Collaborator

@kelson42 Sure! Here are the details on technical side.

If we want to update or change assets in our app without releasing a new version on the Google Play Store, we can leverage the on-demand delivery feature provided by Play Asset Delivery. This way, we can upload new asset packs to the Play Console without requiring a full app update.

Here are the general steps to achieve this:

  1. Create Asset Packs:
    Organize our assets into asset packs. These packs should contain the resources you want to update or add.
    In the Play Console, go to the "Play Asset Delivery" section, and under "Asset Packs," you can upload and manage your asset packs.

  2. Update Asset Packs:
    Whenever we need to update or add new assets, create a new version of the asset pack in the Play Console. This will generate a new pack with an updated version code.
    We can upload our new assets as a new asset pack, and users will be able to download them on demand.

  3. Use the AssetPackManager API:
    In our app code we'll use the AssetPackManager API to request and download the updated asset packs when needed. We can specify the version of the asset pack you want to download.

  4. Handle Asset Pack Updates:
    Implement logic in our app to detect when new assets are available and trigger the download using the AssetPackManager. This ensures that users get the latest assets when they use the corresponding features in your app.

In the end user will be notified just to download new asset packs or not.

Key challenges:
The on-demand asset pack download limit is only 512MB. But if we can add each chunk to a UUID and only update the changed part with a new chunk. If this is technically possible then we can achieve this. It'll allow also users to download the updated parts without worrying about the large full-size apps.

@kelson42
Copy link
Contributor

kelson42 commented Dec 30, 2023

At the end of the process we would have a working apk that can be shared directly with users.

@gouri-panda IMHO you don't have undertodd the ticket. This is about a custom app .apk or .aab directly installable on device.

@gouri-panda
Copy link
Collaborator

@kelson42 I see! I think this is much related to #60. I misunderstood the ticket.

@kelson42
Copy link
Contributor

@kelson42 I see! I think this is much related to #60. I misunderstood the ticket.

This ticket is not related to #60 because everything should be in the apk or bundle.

@kelson42
Copy link
Contributor

kelson42 commented Feb 3, 2024

@gouri-panda @macgills What stops us to make big APK or AAB file to be distributed and installed directly?

@gouri-panda
Copy link
Collaborator

@kelson42 Sure! Let me research on that.

@kelson42
Copy link
Contributor

Duplicate of #66

@kelson42 kelson42 marked this as a duplicate of #66 Jul 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants