полная интеграция Android Python - PullRequest
6 голосов
/ 09 января 2011

Есть ли способ полностью интегрировать Python с кодом Java на платформе Android?

Да, я видел вопрос о запуске Python на Android и Среде сценариев Android (ASE) .

Но этого недостаточно, поправьте меня, если я ошибаюсь. Я хотел иметь возможность не только вызывать скрипт Python из кода Java, но и иметь полную интеграцию. Функция, которая мне нужна больше всего, - это возможность сохранять состояние выполнения кода Python и иметь возможность запускать несколько частей кода по требованию в одном и том же состоянии выполнения.

В JavaSE я бы полагался на Jython. Я считаю, что в простейшем примере показывает все это (и некоторые другие функции, например, что я бы назвал самоанализом состояния переменной):

    // http://www.jython.org/archive/21/docs/embedding.html
    PythonInterpreter interp = new PythonInterpreter();

    System.out.println("Hello, brave new world");
    interp.exec("import sys");
    interp.exec("print sys");

    interp.set("a", new PyInteger(42));
    interp.exec("print a");
    interp.exec("x = 2+2");
    PyObject x = interp.get("x");

    System.out.println("x: "+x);
    System.out.println("Goodbye, cruel world");

Возможно ли это на Android? ASE - это путь?

1 Ответ

0 голосов
/ 11 января 2011

ASE - это, вероятно, верный путь.

Я не эксперт по Jython, но я ожидаю, что отчасти проблема с попыткой пойти по этому пути состоит в том, что Android на самом деле не Java - в то время какбазовый язык тот же, код Android Java не разделяет ни одну из «стандартных» библиотек Java и компилируется в свой собственный язык байт-кода.

Сказав это, существует несуществующий проект для использования Jython с Android.Его автор убил проект и направляет пользователей в ASE:

http://code.google.com/p/jythonroid/

...