Такие выводы для себя сделал.
1. Реально кросплатформенное клиенсткое приложение - только браузерное.
На простых телефонах (не смартфонах) - через Opera Mini (с сильно урезанным JavaScript), да и на многие смартфоны подревнее и попроще скорее всего тоже придется под Opera Mini писать.
JavaScript выполняется на прокси-сервере Opera, не загружая процессора клиетского приложения, клиент реагирует только на события onLoad UnLoad onSubmit OnChange onClick (и не всегда так как в нормальном браузере).
2. Если на Java писать - версии для J2ME, дектопа и Андроида несколько отличаются (особенно нативное для Андроида) и нужно устанавливать виртуальную машину Java (на несмартфонах и большом проценте дектопов уже стоит).
3. Из кросплатформенных сред разработки для мобильных больше всего по описаниям и почти полной бесплатности понравился MoSync
Приложения в нем пишуться на С/С++, поддерживается большинство смартфонов и даже J2ME
В будущем разработчики обещают и на дектоп перенести приложения, а пока на "больших" компьютерах только в симуляторах.
А сложные нативные приложения не сгенерит никакой кросплатформенный костыль
MoSync, судя по тому что я в сети нарыл, неплохо с такой задачей справляется.
100% переносимости конечно же не получится, но вроде бы все работает.