Ответ 1
Вот список языков, которые можно использовать для разработки на Android:
-
Java - основной язык разработки для Android
-
Kotlin, язык из JetBrains, получивший стороннюю поддержку от Google, объявленный в Google I/O 2017
-
С++ - NDK для библиотек, а не приложений
-
Python, bash, et. и др. - Через среда сценариев
-
Corona - нужно использовать Corona SDK. Corona - это SDK высокого уровня, построенный на языке программирования LUA. LUA намного проще изучить, чем Java, и SDK отнимает много боли при разработке Android-приложения.
-
Технология Phonegap/Cardova - которая использовала HTML 5, JavaScript, CSS
-
технология Xamarin - используется С# и в которой используется моно. Здесь MonoTouch и Mono для Android являются кросс-платформенными реализациями Common Language Infrastructure (CLI) и Common Language Specifications.
Что касается вашего второго вопроса: андроид сильно зависит от его java-архитектуры, я нахожу маловероятным, что в ближайшее время появятся другие основные языки разработки. Однако нет особой причины, почему кто-то не мог реализовать другой язык на Java (что-то вроде Jython) и использовать его. Тем не менее, это, безусловно, будет не так просто или просто, как просто написать код на Java.