Open quitegreensky opened 5 years ago
Hi @quitegreensky
Thanks for the bug report. From your buildozer.spec
I see you're using requirements = python3,kivy==master,pillow,requests,kivymd
In this case kivymd
points to https://pypi.org/project/kivymd/ which in fact is another fork, see here https://github.com/HeaTTheatR/KivyMD
If you want to try my fork instead, try to put kivy-garden.kivymd
in your requirements
.
Also I have some questions.
kivy-garden.kivymd
?Also I didn't provide a ready to use demo with buildozer.spec
file, but I will soon. I should also upload the demo myself to the store (refs #11 and #12), because I'm not sure what version of the repo the play store is using.
Thanks for replay! I have also tried https://github.com/HeaTTheatR/KivyMD and your fork but i get same result:
Here are recordings: This is what i made : download
This is what i downloaded from Latest Play store version : download
Differences might not be so clear in screen recordings . But there are significant differences in performance. Also deleted .buildozer
folder and changed android.arch = arm64-v8a
(which is correct i guess) and built the package from scratch. same result again
Finally the package: download (same .spec
above with arm64-v8a
and kivy-garden.kivymd
in requirements)
My device is BAC-L21 - Android 8
Thanks for sharing.
Indeed it's not clear on the video, but I think I see, you have the lag when clicking an item from the navigation drawer correct?
Basically the lag happens when loading a new Screen
, I've seen that in the past. And in fact I've seen it also on some official Google apps.
The way I could workaround this was to impose a delay between the drawer animation and the actual screen loading into memory. And I suspect Google is doing the same actually.
I may introduce this fix on this repo as well.
Edit:
If you feel like it, you can take a look here, bug report https://github.com/AndreMiras/PyWallet/issues/122 and fix https://github.com/AndreMiras/PyWallet/commit/b514479ba1387652266127b787c2682bfdfd1ca0
To see how the workaround works. Basically I delayed actual screen loading to memory via Clock.schedule_once()
while the animation of closing the drawer runs smoothly. Once the animation is done the screen loads. At the end the user experiences less lag
Thanks a lot! I will try it and send results here. but the lags are not just in transitions. there are in all animations( such button, labels...) can you please see the apk package from my previous comment to confirm my problem? or to see it working fine for you... As you said before this will be great if you make your own demo application and send spec file to see what the problem is.
Oh OK, I didn't know about all the other animations, that's annoying indeed. As for the apk package, I cannot try because I'm paranoid, that's why I often use F-Droid. So yes I'll work on #11 and #12 so you can actually try the APK generated from this repo.
FYI perf issues might be related to https://github.com/kivy/python-for-android/issues/2002
FYI perf issues might be related to kivy/python-for-android#2002
yeah. The problem lies with current version of kivy. version 1.10.1 works fine!
FYI perf issues might be related to kivy/python-for-android#2002
Changing kivy version to 1.10.1 solves the fps problem but application's orientation is always in landscape. How can i solve this issue?
Good news. Yes there're quite some ways to solve it. The orientation was fixed in a commit by @inclement in between these two versions. So you could for example cherry pick this and make a recipe patch in your local recipes. But I would suggest something. You can try to kinda git bisec workflow to find what is the commit that brought the fps regression. If you find the exact commit you can make open an upstream issue to document it. It should be fairly easy to find the exact commit, it's just a matter of trying the different versions. I think you can put a commit hash in the version placeholder.
Here is my update: I did some version comparison and found that the fps regression issue comes from #4219. Every version before this commit works fine .
Very nice investigation work :clap: Well now until it's fixed upstream, you can probably make a custom kivy recipe in your project that patch reverse this commit. That way you can be up to date with kivy with the minimum hassle
Very nice investigation work 👏 Well now until it's fixed upstream, you can probably make a custom kivy recipe in your project that patch reverse this commit. That way you can be up to date with kivy with the minimum hassle
hey I've experienced the same lag in my kivymd project, and I didnt quite undestand how to use your tip, could you explain how can I make a custom kivy recipe in my project that patch reverse that problemtic commit?
Hi dear developer. My problem is about lag and slow UI in animations. i have installed the kitchen sink from google play and it worked smooth an perfect on my device. but i have low fps that causes lags in UI. even with exactly same codes in the demo app. i think there is something wrong with my spec file but i can't figure out. can you please help me whit this problem?
main.py (same as demo)
buildozer.spec