[Python-ideas] python on mobile

Chris Barker chris.barker at noaa.gov
Tue Dec 30 17:58:09 CET 2014


On Mon, Dec 29, 2014 at 10:39 PM, Wes Turner <wes.turner at gmail.com> wrote:

>
>> As far as Kivy goes - I have tinkered with Kivy; I've even used Kivy's
>> tools as a starting point for some of my own efforts. However, to me, Kivy
>> is focussing too far up the stack - their toolchain appears to be based on
>> getting *Kivy* working on mobile, not *Python*. This is an entirely
>> reasonable approach if Kivy is what you want at the end of the day - but
>> it's not what *I* want. I've been taking a much more atomic approach. The
>> Kivy toolchain is also anchored in old versions of Python 2; something that
>> definitely needs to be addressed.
>>
>
IIUC, how Kivy works is not to  put a python interpreter on the platform,
but rather to run all your code through Cython, creating a C program that
used the python runtime as a library, essentially. So there is no python
code involved at run time.

So the Kivy lib aside, is this a good way to go on Mobile? I can't image
it's too hard to remove the kivy UI  stuff if you don't want to  use it --
even if the current tools all include all that by default.

But is it better to target getting Python running on Mobile just like it
does on the desktop: you have a python interpreter, a bunch of python
modules, and you bundle it all up with a executable launcher of some sort,
al la py2exe, py2app, etc.?

Something to keep in mind is that that way most Python code is run may not
make sense (or even be an option with Apple's rules, anyway): you have a
python environment installed, and install a bunch of application code on
top of that, and run that. Makes sense to system scripts, and web apps and
that like, but really doesn't make sense for "Apps".

What I'm getting at is that the final goal for what exactly we want people
to be be able to distribute may effect decisions about what to build and
how to build it.

BTW, one thing I'd like to be able to build is what I call a "BILS"
(Browser Interface, Local Server) app: you run a web server bundled up in
an app that points itself to the browser component for all the UI. We've
been very successful doing this on Windows and OS-X, as a way to provide a
self contained desktop app, and a hosted Web App with almost entirely one
code base, and an identical user interface.

(http://cameochemicals.noaa.gov/ and
http://response.restoration.noaa.gov/cameochemicals)

(Python / Pyramid on the back end, desktop is the local browser hosted by a
wxPython wrapper)

We'd like to be able to port that to iOS and Android, but there doesn't
appear to be a solid python option that we could run a Pyramid web server
on Mobile at this point -- maybe I'm wrong)

-Chris


-- 

Christopher Barker, Ph.D.
Oceanographer

Emergency Response Division
NOAA/NOS/OR&R            (206) 526-6959   voice
7600 Sand Point Way NE   (206) 526-6329   fax
Seattle, WA  98115       (206) 526-6317   main reception

Chris.Barker at noaa.gov
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-ideas/attachments/20141230/503cdcca/attachment.html>


More information about the Python-ideas mailing list