Hello mates. So I'm having this problem for a while, but I've always found a workaround, but now there's no use.
How can we really simulate our devices when writing apps?
Like, I know using metrics like "dp()" in the sizes of our widgets helps, but still this does not seem enough.
I am developing this game and I took the resolution of iPhone X's viewport size(375x812) with a ppi or dpi of 458 to be the ideal screen resolution for the app.
Now, how can I simulate this on my computer while writing the app, so I can avoid the stress of compiling with buildozer everytime I change a thing to see if the changes are great with the screen resolution of my smartphone device?
What I tried up until now is not something that works perfectly but kept me going thus far, up until now whenever I tried to run my app I would do this:
KIVY_DPI=458 KIVY_METRICS_DENSITY=0.91 python main.py --size 375x812
This was not perfect, but it was somewhat workable, but now I have several labels in MDCards that are not in place.
Usually I would compile with buildozer, see if the widgets are in place and the sizes are right, if not, then I would change it, compile it again and repeat this process until done. But now I have a lot of labels to use this method.
After searching for a bit, I found a StackOverflow post in which this was used to run a kivy app to simulate a phone's resolution:
python main.py --size=375x812 --dpi=458
it did change a bit the screen size of the app in my computer, but still the changes did not match my smartphone at all.
Now, if anyone has any ideas, I would be forever grateful. Sorry for the long message.
Here are some pictures comparing the app launching in my computer and in 2 smartphone devices:
Computer with:
KIVY_DPI=458 KIVY_METRICS_DENSITY=0.91 python main.py --size 375x812
Smartphone 1:
Smartphone 2: