kiwix / kiwix-xulrunner

[ARCHIVED] Legacy Kiwix desktop solution for Windows/macOS/Linux
https://download.kiwix.org/release/kiwix-xulrunner/
GNU General Public License v3.0
112 stars 28 forks source link

Custom app/Wikimed fails to install on low-end devices #310

Closed kelson42 closed 7 years ago

kelson42 commented 8 years ago

A few people report that they are not able to install the Wikimed app (in English). The installation crashs at 99%. At a first I thought this is a problem with the internet connection, but it seems that we face here an other problem. I suspect Google Play to compress the companion files and then to crash during the decompression of this file at the installation time. This might be cause (here too) by a lack of memory - considering that the Wikimed ZIM file (companion file) is 1GB big. I think that if we cut the ZIM file in many parts, then it should be able to install correctly, even on low-end devices.

Feedbacks about this theory welcome.

julianharty commented 8 years ago

I've got some low-end devices and can test the theory locally. I'm interested in learning more about the download process that's integrated into Google's system for extension files anyway. I thought there was a 2-file limit for extension files anyway, so if we were to chop the file into several smaller ones we're likely to break the Google guidelines anyway (there are ways it could be done from what I can tell from reading the documentation https://developer.android.com/google/play/expansion-files.html e.g. by using App A to download expansion files for App A and App B (etc) however this might not work - it depends on how the Application Licensing service generates the URLs and whether it somehow enforces a limit that App A can only download the files uploaded with App A, etc.

"However, in some cases your app must download the expansion files itself by requesting them from a URL provided to you in a response from Google Play's Application Licensing https://developer.android.com/google/play/licensing/index.html service."

There is also a discussion in the article on compression, limits to compression, reading from zip file formats, etc. I don't know whether Google applies additional compression OTA for files that are already compressed. TBD... I'm also interested on how robust the partial download and continue mechanisms are. From some of the review comments I've seen it seems there may be flaws where Google Play restarts downloads when the network connection is flaky (and eats up all the user's credits). If we're able to find a way to chop the files into smaller discrete pieces that can be (a) transferred reliably on whatever flavour of connection and whatever spec of supported device and (b) the files can be used independently without needing the entire volume of material to be downloaded before any can be used - I think we may be able to make a significant number of users happier. Ciao for now

Julian

On 11 September 2016 at 10:08, Kelson notifications@github.com wrote:

A few people report that they are not able to install the Wikimed app (in English). The installation crashs at 99%. At a first I thought this is a problem with the internet connection, but it seems that we face here an other problem. I suspect Google Play to compress the companion files and then to crash during the decompression of this file at the installation time. This might be cause (here too) by a lack of memory - considering that the Wikimed ZIM file (companion file) is 1GB big. I think that if we cut the ZIM file in many parts, then it should be able to install correctly, even on low-end devices.

Feedbacks about this theory welcome.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/kiwix/kiwix/issues/310, or mute the thread https://github.com/notifications/unsubscribe-auth/AAv947IGyXIdpsvnt_rCmYLt7TuMwaxyks5qo8UAgaJpZM4J59h0 .

kelson42 commented 8 years ago

@julianharty any test results about this?

mhutti1 commented 7 years ago

This issue was moved to kiwix/kiwix-android#60