Hacker News new | past | comments | ask | show | jobs | submit login
Python on Android? First impressions of Kivy (archlinux.me)
90 points by googletron on Oct 20, 2012 | hide | past | favorite | 10 comments



Has anybody had any luck with Kivy on iOS? I'm interested in it and wondering any thoughts/experiences?


There is also http://code.google.com/p/android-scripting/ for running Python and other scripting languages on Android. I've used it in the past when I needed to use my phone as a fancy calculate and wrote some Python to perform the calculations.


I used it to hack together a small app for background data collection a while ago. The only problem was instability. I gave the script to family and friends to run on their phones and collect more data but it was a pain teaching them how to restart it when it died which it frequently did. Not sure if this has been resolved in the last 18 months.


I used it on my old htc espresso for a while now. Earlier this year I tried it on my friend's htc evo 3d and it didn't work. It seems that it didn't support arm11 devices. It is too bad since I was trying to convince him to try python :(. I don't know if it support arm11 devices now.


I don't understand exactly how this works. You have an Python API for controlling the UI, great, but... can you use the full Python capabilities and expect your app to be portable? If yes, How it works? Is the app compiled to Dalvik bytecode when ported to Android for example? Are you restricted to pure Python modules or something?


It works on Pygame for Android library which is the launcher. The code written is in python and cython with bindings to a few Android API's. The compiled code is python object code which runs on the launcher. It is not dalvik bytecode and not portable.


It seems to package the Python interpreter on Android: http://kivy.org/docs/guide/packaging-android.html


I have read a bit about this Python on Android, and it seems that uses Android's NDK, which allows to port C/C++ programs to Android. I wasn't aware that this was possible. I thought that only bytecode was allowed for security reasons.


I was curious as to how well this comes across on iOS devices, and came across this while poking around the Kivy site:

  We haven't published our demos, but the winner of Kivy game contest #1 have been packaged for IOS: Deflectouch on iTunes.
Linking to this: https://itunes.apple.com/us/app/deflectouch/id505729681

It's free, and a fun little game. It feels non-native, but less so than some of the other apps out there. It interprets touch events smoothly enough, and runs well, though there isn't a lot going on so that's not a real indicator of performance.


The people who are wondering what is this project good for. Apart from the obvious ease of using OpenGL widgets to create your UI, it has other benefits too. For example: Imagine an interactive books app. This app is actually a store for interactive books. Using Kivy, you can update this app with both logic(code) and data(assets), thus introducing a new book. Initially your books may be low on animations but as you get better at it, you insert complex animations. All that without changing the base launcher code(well, except when the base launcher library is updated once or twice a year).




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: