8 ms·
How does this compare to PyInstaller or other packagers? What underlying tech does it use?
by nu11ptr 3y ago
How does this compare to PyInstaller or other packagers? What underlying tech does it use?
- WillAdams 3y agoThe big difference is it uses "Toga" https://beeware.org/project/projects/libraries/toga/ https://beeware.org/project/projects/libraries/toga/ which uses native widgets and manages basic functionality such as where the "Quit" menu entry is automatically. Looking into this now --- it looks perfect for my needs, just hoping that there's a nice graphical tool for laying out a GUI (if it has a graphical programming mode like to Blockly or Ryven, then it is perfect for me).
- fock 3y agoso essentially what Kivy did already a bit ago.
- nbadg 3y agoI haven't used Kivy in quite a while, so maybe this has changed, but as far as I know -- no, Kivy hasn't done something like this. In Kivy, everything looks like Kivy, regardless of what platform you're on, and you need to explicitly lay everything out, including whichever changes you want for a particular platform. Whereas with Toga, the UI is changed to match the user's expectations for that platform, automatically. One example of this, as parent mentioned, is where the "quit" button is located. Different platforms put this in different places. Toga will automatically put it in the right one, depending on which platform you're on. Buttons will look like normal buttons on a Mac, but also like normal buttons on Windows -- depending on which platform you're on.
- dr_kiszonka 3y agoHi! Do you know whether Kivy or Toga/BeeWare lets you access Android API? For example, I want my app to listen to BatteryManager's broadcasts [0]. Is it possible using any of these frameworks? (Or any other Python-centric framework?) I read that Toga supports background tasks, but it is not clear to me if I could use them to listen to Android broadcasts. 0. https://developer.android.com/training/monitoring-device-state/battery-monitoring https://developer.android.com/training/monitoring-device-sta...
- WillAdams 3y agoThey give an example of using Apple's Obj-C framework, so I believe this sort of thing is possible.
- skinner927 3y agoIt appears PyInstaller is much more portable. Briefcase seems to make an .msi installer on Windows and an AppImage for Linux. Both of those require installation to use. PyInstaller can create a single executable that you can just run (yea sure it extracts itself to a temp dir, but the optics are very different).