beeware / briefcase-android-gradle-template

A template for generating Android Gradle projects with Briefcase
MIT License
18 stars 19 forks source link

If pythonhome.zip has same filename, skip unpack #14

Closed paulproteus closed 4 years ago

paulproteus commented 4 years ago

This paves the way for the support library to use a filename that contains the hash of the stdlib's contents.

In addition, expect stdlib to live in its own asset folder.

Testing done

The app still launches (assuming you rebuild Python-Android-support). :)

Launch time is now ~2.8 seconds, which is good enough for me for now. Here's a log.

06-05 18:16:21.393  9598  9598 D MainActivity: onCreate() start
06-05 18:16:21.507  9598  9598 D MainActivity: onCreate(): captured stdout/stderr
06-05 18:16:21.801  9598  9598 D MainActivity: Skipping unpack of Python stdlib due to cache hit on stdlib/pythonhome.74a2d8f585a3603110611c4083c41685436bc28034e93abebb5fba4608c97ec1.x86.zip
06-05 18:16:21.801  9598  9598 D MainActivity: Unpacking rubicon-java to /data/user/0/org.ash_eesh.helloworld/files/python/rubicon-java
06-05 18:16:21.884  9598  9598 D MainActivity: Unpacking Python assets to base dir /data/user/0/org.ash_eesh.helloworld/files/python/user_code
06-05 18:16:22.379  9598  9598 D MainActivity: unpackPython() complete
06-05 18:16:22.379  9598  9598 D MainActivity: setPythonEnvVars() start
06-05 18:16:22.379  9598  9598 V MainActivity: pythonHome=/data/user/0/org.ash_eesh.helloworld/files/python/stdlib
06-05 18:16:22.380  9598  9598 D MainActivity: setPythonEnvVars() complete
06-05 18:16:23.069  9598  9598 D MainActivity: Python.init() complete
06-05 18:16:23.069  9598  9598 D MainActivity: Python.run() start
06-05 18:16:24.173  9598  9598 D MainActivity: Python.run() end
06-05 18:16:24.173  9598  9598 D MainActivity: startPython() end
06-05 18:16:24.173  9598  9598 D MainActivity: user code onCreate() start
06-05 18:16:24.173  9598  9598 D MainActivity: user code onCreate() complete
06-05 18:16:24.173  9598  9598 D MainActivity: onCreate() complete
06-05 18:16:24.183  9598  9598 D MainActivity: onStart() start
06-05 18:16:24.183  9598  9598 D MainActivity: onStart() complete
06-05 18:16:24.184  9598  9598 D MainActivity: onResume() start
06-05 18:16:24.185  9598  9598 D MainActivity: onResume() complete
paulproteus commented 4 years ago

I opened this (and closed #11 ) for clarity. Hope that's actually helpful. :)