Ответ 1
Какая поддержка существует для различных технологии промежуточного ПО в Android?
Мое личное мнение - хотя я и не чувствую, что я одинок в том, чтобы думать таким образом - только то, что только протоколы, специально предназначенные для работы через Интернет, удаленно подходят для использования с мобильным клиентом. Итак, из вашего списка, единственное, что я хотел бы развлечь, было бы:
Веб-службы, такие как XML-RPC, SOAP, REST
Некоторые люди поддерживают порт Android kSOAP2. Однако я получаю отчетливое впечатление, что большинство разработчиков Android, работающих в этой области, имеют тенденцию к протоколам REST и REST-ish. Если ничего другого, то, что все полезные веб-сайты и службы используют для API, особенно по сравнению с XML-RPC (старый) и SOAP (старый и нехороший).
Я успешно использовал библиотеки java.net.URLConnection
и Apache HTTPClient в Android для связи с конечными точками стиля REST - как напрямую, так и через сторонние JAR - без особых проблем для Android.
Насколько хорошо (или нет) существующая Java библиотеки работают при использовании на Android-платформа?
Трудно ответить на это абстрактно. Android реализует значительную часть JavaSE, но не все JavaSE, поэтому есть вероятность, что любой JAR ожидает, что Android не предложит. Аналогичным образом, Android не использует переменные среды, ключи командной строки или множество других вещей, которые разработчики сосредоточили на рабочем столе, возможно, представили в виде полузадачи. Итак, некоторые вещи работали для меня не что иное, как перекомпиляция (Beanshell), и некоторые вещи работали для меня после удаления избыточных классов (JTwitter), и некоторые вещи выглядели так, как будто они будут ужасно работать (JavaMail).