Я думаю, что Вы описываете там нисходящий метод дизайна .
Вы не должны делать этого, но иногда он действительно помогает.
Java «более родная» на платформе Android; Python стремится к достижению паритета, но еще не совсем там, AFAIK. Примерно обратная ситуация по отношению к App Engine, где Python существует на год дольше, чем Java, и поэтому все еще более зрелый и законченный (даже несмотря на то, что Java догоняет).
Итак, в любой ситуации, когда вы вообще не определитесь между Java и Python, если развертывание должно было произойти на какой-либо платформе общего назначения, такой как Linux, я думаю, что аргументы зрелости и полноты могут склонить вас к Python для развертывания на App Engine и к Java для развертывания на Android.
На мобильной платформе производительность и использование памяти намного важнее, чем на настольном компьютере или сервере. JVM, работающая на Android, оптимизирована для мобильной платформы. Судя по ссылкам, которые я видел о Python на Android, похоже, ни у одного из них нет оптимизированной виртуальной машины для мобильной платформы.
С Java у вас есть доступ ко всему API ОС.
Кажется, есть некоторый прогресс на фронте Python за последние несколько месяцев .