Подтвердить что ты не робот

Технология писать iPhone, BlackBerry и Android телефон одновременно?

Есть ли стратегия или, по крайней мере, самая лучшая практика для написания приложения, которое работает на iPhone, BlackBerry и Android?

Я не знаю о средах разработки для BB и Android, но я предполагаю, что они поддерживают Java-приложения.

Я знаю, что iPhone потребует часть ObjectiveC (а также целый новый пользовательский интерфейс).

Кто-нибудь это сделал?

4b9b3361

Ответ 2

Один метод, который подходит для определенных приложений, таких как справочные приложения: Используйте HTML/CSS/JavaScript и пишите компактные клиенты, которые используют объект просмотра HTML-платформы для, чтобы читать локально встроенный веб-контент.

Одним из способов написания кросс-платформенного приложения, работающего как на BlackBerry, так и на Windows Mobile, было написать все это в HTML. Мне пришлось использовать подмножество HTML и CSS, которые работали как на BlackBerry Browser, так и на Pocket Internet Explorer. Я также использовал небольшое количество JavaScript.

Я написал очень маленьких зрителей, которые запускали его встроенные HTML и изображения с использованием jar://(BlackBerry) и res://(Windows Mobile) URL. Я смог внедрить все файлы HTML и изображений в составе приложения BlackBerry, используя пользовательскую версию поля браузера и. Для Windows Mobile я смог использовать Pocket Internet Explorer в качестве встроенного ActiveX в моем приложении Windows Mobile.

Примечание. Для BlackBerry мне пришлось поддерживать устаревшие устройства под управлением ОС 4.2. Для этого я переработал много образцов кода RIM, таких как SecondaryResourceFetchThread.java, чтобы вытащить изображения, встроенные в приложение, и доставить их через специальный объект подключения, который реализовал HttpConnection, который я разработал для обработки jar://URL для внутреннего встроенных HTML/изображений в моем приложении BlackBerry. Было немного сложно понять. Для Windows Mobile это было более интуитивно понятным.

Существуют и другие способы сделать то, что мне нужно, но он отлично работал для медицинского справочного приложения, и я смог разработать отдельные файлы CSS для BlackBerry и для Windows Mobile, чтобы немного переформатировать контент для двух мобильных устройств. (Это было похоже на тестирование совместимости Netscape и Internet Explorer в старые времена.)

Это может не сработать для вашей ситуации, но если ваше приложение является "ссылкой" для веб-стиля, и вы хорошо знаете, как делать HTML, этот подход может работать.

Ответ 4

Еще один вариант - Rhodes, который является структурой Ruby.

Ответ 5

При написании многоплатформенных приложений вам нужно решить, какую часть кода использовать. 2 варианта:

  • Все. Вы используете (записываете) кросс-платформенные библиотеки gui и системные процедуры
  • Логика - это кросс-платформа, но уровень представления специфичен для платформы.

Второй подход, как правило, дает лучшие приложения, но это большая работа (при условии, что вам не нужно писать библиотеки кросс-платформен).

Сложная вещь с мобильным миром - это выбор языка. Прямо сейчас у вас есть

  • Java: телефоны Android, Blackberry, Java ME.
  • Цель C/C: iPhone, windows Mobile
  • Javascript: Palm Pre

Вы можете перекрестно скомпилировать java для javascript и наоборот. Вы также можете скомпилировать java на C или использовать механизм javascript, который вы можете вызвать с C. Я не думаю, что вы можете запускать C на java/javascript телефоне. Это заставляет меня предлагать писать код в Java/Javascript. Кросс-компиляции (и языки смешивания вообще) имеют недостаток в отладке немного сложнее.

Ответ 6

http://j2mepolish.org может быть хорошим выбором, однако iphone только в дорожной карте. Но андроид и BB уже поддерживаются, а также все другие телефоны j2me.

Ответ 7

также, если вы пишете игры, посмотрите мое кросс-платформенное решение (iPhone, Android и т.д.), называемое движком каракатицы, на http://www.cuttlefishengine.com.

Ответ 8

Кроме того, вы можете попробовать использовать Mobile Community Framework (MCF). Это кроссплатформенная среда, основанная на iPhone, Android, WinMobile, Symbian и BlackBerry. MCF обрабатывает операции сети, местоположения и близости для вас, в сети Wi-Fi Ad-Hoc или через выделенный прокси-сервер, если нет прямого подключения. Он имеет простой API, и он свободен в использовании. Таким образом, вы можете развить свой интерфейс приложения и логику отдельно на каждой платформе и использовать MCF для подключения экземпляров вашего приложения так, как вам нравится.

Дополнительная информация на http://uvamobiltec.com

Ответ 9

Вы всегда можете написать приложение javascript в Интернете, и оно должно работать на всех трех. Конечно, это не устанавливается на телефоне.

Android имеет веб-представление, в котором работает Javascript. Я уверен, что другие платформы тоже. Если вы написали большую часть своей логики в javascript, вы могли бы повторно использовать этот javascript на разных платформах.

Ответ 10

Еще одна структура - http://www.mosync.com/

Кажется, он поддерживает все основные платформы.

Ответ 11

Если вы хотите написать кросс-платформенное веб-приложение, SenchaTouch (http://www.sencha.com/products/touch/) или Phonegap (http://www.phonegap.com/) - хороший выбор.

Если вы предпочитаете собственное приложение, лучшим кросс-платформенным решением является Titanium (http://www.appcelerator.com/). Используя Titanium, вы можете написать свое приложение в Javascript, и он компилирует JS в собственный код (Objective-C, Java...)

Ответ 12

Adobe Flex и Flash Builder также выглядят многообещающими. Тем не менее, вы должны рассмотреть его патентованный, но с видео на веб-сайте своего разработчика, похоже, стоит того. Кстати, последняя версия в настоящее время поддерживает Android. Поддержка iOS должна выйти в июне 2011 года через обновление.