[Mobile-sig] Experiments with Dalvik

David Boddie david at boddie.org.uk
Tue May 17 15:43:16 EDT 2016


On Tue May 17 15:15:04 EDT 2016, Joao S. O. Bueno wrote:

> The point of the toolset David just borught up is not just about 'an
> entire oher language' - it is a toolset for being able to manipulate
> android assets, and that is in Python.

I would also recommend that people look at Androguard as well, since it
supports all kinds of things that I wasn't interested in.

https://github.com/androguard/androguard/

I didn't reuse any of it because it seemed that it has a different goal
to the one I was aiming for, which was to be able to create Dalvik bytecode
in a high level language and package it up.

> And the new language, that comes up for free, is different from Kivy
> and other approaches, in the sense it compiles python-like source ode
> directly to Dalvik bytecode - it is not the same as(1) building Python
> natively on Android, and not the same as emulating Python over Java.

Emulating Python on Java would be interesting if you wanted to get the
behaviour of the code as close as possible to CPython. I wonder if it would
be possible to target Dalvik with RPython - I've never looked at RPython
closely.

> I don't think replying to someone who is bringing a totally cool,
> months long project, with lots of tools, innovations and possibilities
> with "you could have used X"  is anything constructive - at least not
> if one does not at least take a look on what is being presented.

I'm sure that Bill wasn't trying to be unconstructive, just trying to prevent
someone from doing unnecessary work. After all, I did say that I got into
doing this because I wanted to learn about developing for Android, and this
probably isn't the most optimal way of doing it, though it is interesting!

> I don't think Kivy is good for getting performatic, or native-looking
> apps, when talking about Python, for example. And also, the tools to
> handle android assets in this repo could even be used to replace the
> need for Android SDK when building Kivy based apps.

What I found interesting about Java and Android development was that the
way the SDK does things is the way everyone thinks you _have_to_ do them.
Once you have tools to assemble packages, you can use OpenSSL to sign them,
and that removes the need for things like keytool and jarsigner, which are
part of the JDK.

In practice, you still need things like adb if you want to look at logs, but
maybe that could also be reimplemented. However, it's not currently on my
list of things to do.

David


More information about the Mobile-sig mailing list