Я могу дать вам некоторые советы основаны на моем многолетнем опыте с разработки для различных мобильных платформ:
Если вы сказали, что вы хотите, чтобы развивать собственное приложение, и вы хотите предназначаться более одной платформы, вы необходимо будет разработать его с нуля на каждой платформе (C++ на Symbian, объектив-C на iPhone, Java на Android и Blackberry и C# на WM7). Однако вы можете сделать какой-то основной движок (если возможно) на C, а затем переписать только части графического интерфейса (за исключением WM7 и RIM/BB) и функциональность, зависящую от телефона (например, доступ к контактной книге, акселерометру, файловой системе ...). Это непростая задача, и если у вас нет опыта работы в мобильных приложениях, не только с языками программирования, но и с фреймворками ОС, IDE, парадигмами, подписью, распространением в магазинах, если у вас недостаточно устройств для тестирования, .. ,- просто если вы новичок во всех экосистемах , то это будет для вас чрезвычайно трудным, трудоемким, дорогостоящим и рискованным и, честно говоря, я не верю, что вы сможете сделать какой-то ценный продукт.
Код перезаписи для каждой платформы не является большой проблемой, так как он разработан для одной ОС, это означает, что у вас есть знание домена приложения, вы только клонируете его на другие платформы, что может быть выполнено за 50% времени или меньше, но все же вам нужны эксперты для каждой платформы.
Существует также кросс-платформенная возможность, такая как HTML5. Это означает, что вы можете использовать собственный компонент (UIWebView iPhone, BrowserField2 на Blackberry, WebView на Android, QtWebKit на Symbian, ...) на целевой платформе, сделать некоторую оболочку вокруг кода HTML/CSS/Javascript. Даже это звучит многообещающе, что это связано с некоторыми издержками, связанными с проблемами производительности, разным уровнем поддержки веб-функций, отсутствием собственного приложения, проблемами с отладкой, ошибками обработки ... плюс вы должны быть действительно хороши в этих веб-технологиях, чтобы сделать приложение выглядит круто. Это вариант только для относительно простых приложений. Есть несколько простых фреймворков, таких как PhoneGap, которые вы можете использовать в начале, но в какой-то момент вы обнаружите, что вам нужны более сложные решения, и этого вам будет недостаточно. Также есть много библиотек HTML/CSS/Javascript с компонентами пользовательского интерфейса, которые придают вашему веб-приложению больше наглядного видения (например, jQuery Mobile), но он никогда не будет похож на собственное приложение.
Это реальность :) С уважением, Sten
Хотя это кажется очень хорошим, для него требуется MAC для разработки iPhone, а разработка iPhone - это все, что имеет базу данных SQLite. Я видел это на странице Wiki. – harsimranb
Из того, что я прочитал, поддержка DB в телефонном разговоре на самом деле происходит из [HTML5 DB] (http://html5doctor.com/introducing-web-sql-databases) - и в то время как браузер android поддерживает базы данных с html5 [Dev Ref] (http://developer.android.com/sdk/android-2.0-highlights.html#UserFeatures), webView, который использует PhoneGap, не был, но планировалось, что и для Android 2.0 - не знаю, если это так. Что касается развития iphone, я думал, что он доступен только для Mac из-за SDK, требующего mac osx [Ipone Developement] (http://stackoverflow.com/questions/113547/iphone-development-on-windows) – Scoobler
Да, я также увидел это в API. HTML5 DB определенно хорошо, поскольку API останется неизменным между несколькими устройствами. – harsimranb