Были ли какие-либо хорошо задокументированные проекты или проекты с открытым исходным кодом нацелены на iPhone, Blackberry и Android? Есть ли другие платформы, которые лучше подходят для таких усилий?
Обратите внимание, что я особенно интересуюсь клиентским программным обеспечением, а не веб-приложениями, хотя любая информация о трудностях использования веб-приложений на нескольких мобильных платформах также интересна.





В iPhone используется Objective C, Blackberry Java SE с функциональностью RIM, а Android - еще одна пользовательская версия Java. Я мог бы увидеть, как вы могли бы объединить последние два, но нет функциональности (без взлома) для запуска Java-приложений на iPhone.
Лучшее, что я видел до сих пор, - это что-то вроде Qt, которое будет работать в Windows CE, почти наверняка вскоре на Symbian, некоторых платформах Java и трех основных настольных ОС.
Вы можете: написать компилятор, который компилирует Java в obj-c или напрямую в родной (так же, как monotouch для C#), или поставлять java vm с каждым приложением. Однако оба метода, вероятно, не разрешены в отношении последних лицензий Apple sdk.
@nos: они только что отменили эту политику в последней версии.
Для iPhone в настоящее время нет такого понятия, как открытый исходный код, поскольку NDA Apple iPhone SDK запрещает публикацию кода. Они также запрещают размещать код на любых сайтах, не принадлежащих Apple, или даже на форумах, не принадлежащих Apple, по вопросам разработки для iPhone. Как только истечет NDA (будет ли оно когда-нибудь?), У нас появятся приложения для iPhone с открытым исходным кодом.
Что ж, у BlackBerry на самом деле нет Java SE, у них есть Java ME с много дополнительных библиотек, предоставляемых RIM. То же самое и с Android. Единственные кроссплатформенные приложения, которые вы когда-либо увидите на мобильных устройствах, вероятно, написаны на строгом Java ME, который работает на большинстве устройств. Однако, как и JavaScript между разными браузерами, Java ME имеет особенности на разных устройствах, поэтому могут потребоваться изменения исходного кода.
Я начал использовать действительно крутой кроссплатформенный SDK под названием EdgeLib. Он позволяет вам использовать простой API, и вы можете компилировать свои проекты для различных платформ: Windows Mobile Pocket PC, Windows Mobile Smartphone, Symbian Series 60, Series 80, Series 90, Symbian UIQ, Gamepark Holdings GP2X, Gizmondo и Windows desktop. . Я знаю, что iPhone, Blackberry и Android не входят в этот список, но разработчики упомянули, что эти платформы входят в их дорожную карту.
Разве не должно вызывать беспокойство тот факт, что на гизмондо напали? Это никогда не было успешным, и их генеральный директор находится в тюрьме .. Так почему же это была убедительная цель для EdgeLib, если не для продаж / маркетинга / модного слова bs.
Люк ... ты знаешь об аппаратном и программном обеспечении Gizmondo? Он опередил свое время.
EdgeLib выглядит многообещающе, и бета-версия iPhone объявлен, но еще не открыт.
S60 на ОС Symbian имеет множество интересных проектов, связанных с языками рабочего стола / сервера для перемещения приложений на мобильные устройства. Несколько интересных: -
Python: Sourceforge
Рубин: рубиновый симбиан
Mozilla: мозилла
S60Веб-набор: S60браузер
POSIX: openc_cpp
Redfivelabs реализовали компактный фреймворк .Net для платформы S60.
Titanium Mobile от Appcelerator выглядит интересно. Вы разрабатываете свое приложение в HTML и Javascript и загружаете на их сервер, где оно компилируется в собственное приложение целевой платформы (в настоящее время iPhone и Android).
Я думаю, что лучший шанс для кроссплатформенного мобильного успеха - это Интернет. Просто напишите приложение очень простой Интернет для того, чего вы хотите достичь. Он должен работать на Nokia S60browser, Iphone и Android.
Это уже много мобильных устройств ...
+1. И чтобы получить этот гламур (и продажи) в App Store, вы можете использовать элементы управления веб-браузера для создания собственного приложения оболочки, которое вызывает ваше веб-приложение, по крайней мере, на Android и iPhone. googlegeodevelopers.blogspot.com/2010/02/…
Что ж, это сильно зависит от того, что должно делать ваше приложение. Как насчет того, чтобы делать снимки с помощью приложения и распознавать изображения? Вы не можете сделать это с помощью веб-приложения, ориентированного на все мобильные устройства.
Вы можете использовать API камеры с промежуточными остановками, например Телефонный разрыв. В противном случае скоро появятся реализации dev.w3.org/html5/html-device.
Кроме того, рендеринг веб-представления на телефоне может быть намного медленнее, чем при использовании встроенных функций SDK.
Есть 2 [новых] решения именно этой проблемы:
и
хотел бы добавить Appcelerator (appcelerator.com) в этот список.
для богатых игр / приложений хотелось бы добавить Corona SDK
XMLVM (через Кокс и код) и EdgeLib в настоящее время кажутся наиболее зрелыми вариантами. EdgeLib нацелен в первую очередь на разработчиков игр, и, согласно Coke and Code, с разработчиками XMLVM сложно связаться.
С 2011 года ни на одном из этих веб-сайтов не было обновлений, поэтому я считаю этот ответ устаревшим по состоянию на 4 квартал 2014 года.
У нас есть кроссплатформенная платформа мобильной разработки RAMP. Он охватывает как функциональные телефоны, так и смартфоны от среднего уровня 1 до Android. Платформа в основном предназначена для безопасных коммерческих приложений, но она является подключаемой, поэтому с ней можно делать практически все, что угодно.
Для получения дополнительной информации и доступа к платформе посмотрите:
Phonsai - новинка на рынке кроссплатформенной мобильной разработки «без программирования». Это смесь мобильной разработки своими руками и управления контентом. Вы можете настроить все приложения. Никаких шаблонов. Это SaaS. Полностью веб-интерфейс с запуском веб-интерфейса Java. Работает с 2000 моделями мобильных телефонов. Очень простой графический интерфейс и без кодирования. Просто скопируйте и вставьте. Он имеет модули создания, отправки и отчетности. И, наконец, внутри него 4 эмулятора, так что это концепция WYSIWYG. Вы можете связаться с Phonsai по телефону http://phonsai.com.
Стандарт HTML5 поддерживает выпуск автономных приложений HTML5. По сути, приложение HTML5 представляет собой набор файлов HTML5, JavaScript и CSS, которые будут работать автономно в браузере настольного компьютера или устройства. Вы можете распространять их, как любую другую программу, в том числе продавать их по iStore за iPhone.
В настоящее время эта поддержка неоднородна, но, вероятно, значительно улучшится в следующие год или два.
Google для приложений HTML5 для информации и ресурсов. Хорошим введением в HTML5 является онлайн-книга «Погрузитесь в HTML5», Марк Пилигрим. Это незавершенная работа, но она достаточно завершена, чтобы быть полезной.
Я не думаю, что вы можете отправить так называемое приложение HTML5 в App Store. Да, и это называется App Store, а не iStore.
инструменты для создания приложений HTML5 перечислены здесь: stackoverflow.com/questions/5063117/…
Я нашел один игровой движок для этого Игры MoMinis доступны для распространения и поддерживаются на устройствах Android, Blackberry, Symbian и J2me. Игры MoMinis включают в себя широкий спектр казуальных игр, включая аркады, головоломки, тайм-менеджмент, стратегии и мобильные игры для тренировки мозга.
Удивленный MoSync здесь еще не упоминался.
Обновление (январь 2014 г. - настоящее время): проект заброшен.
Appcelerator, PhoneGap (приобретенный Adobe, плюс теперь стандартизированный как Apache Cordova), Intel XDK (ранее называвшийся appMobi) и Rhodes (приобретенный Motorola Solutions) - все с открытым исходным кодом и создают гибридные приложения (изначально упакованные с помощью html ui, с возможностью чтобы добавить некоторые из ваших родных элементов управления).
Если это игра, ваш единственный профессиональный выбор в пользу бесплатного движка, который можно использовать для коммерческой разработки, - это Unity3D. Для 2D-игр также доступен cocos2d-x. Кроме того, Vuforia можно использовать для AR и LiquidFun для физики.
Разве веб-интерфейс не был бы более многообещающим, учитывая, что 2/3 вышеуказанных устройств используют webkit для просмотра? Я также скептически отношусь к любому приложению, которое пытается создать единый пользовательский интерфейс для устройств с сенсорным экраном и без сенсорного экрана (а это большинство Blackberry).