Какая работа проделана по кроссплатформенной мобильной разработке?

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

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
89
0
20 031
17
Перейти к ответу Данный вопрос помечен как решенный

Ответы 17

В iPhone используется Objective C, Blackberry Java SE с функциональностью RIM, а Android - еще одна пользовательская версия Java. Я мог бы увидеть, как вы могли бы объединить последние два, но нет функциональности (без взлома) для запуска Java-приложений на iPhone.

Лучшее, что я видел до сих пор, - это что-то вроде Qt, которое будет работать в Windows CE, почти наверняка вскоре на Symbian, некоторых платформах Java и трех основных настольных ОС.

Разве веб-интерфейс не был бы более многообещающим, учитывая, что 2/3 вышеуказанных устройств используют webkit для просмотра? Я также скептически отношусь к любому приложению, которое пытается создать единый пользовательский интерфейс для устройств с сенсорным экраном и без сенсорного экрана (а это большинство Blackberry).

Luke 23.12.2008 23:06

Вы можете: написать компилятор, который компилирует Java в obj-c или напрямую в родной (так же, как monotouch для C#), или поставлять java vm с каждым приложением. Однако оба метода, вероятно, не разрешены в отношении последних лицензий Apple sdk.

nos 27.05.2010 02:08

@nos: они только что отменили эту политику в последней версии.

Tim Büthe 29.09.2010 22:11

Для 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.

Luke 23.12.2008 23:03

Люк ... ты знаешь об аппаратном и программном обеспечении Gizmondo? Он опередил свое время.

monksy 29.09.2009 05:45

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/…

MarkJ 28.02.2010 21:21

Что ж, это сильно зависит от того, что должно делать ваше приложение. Как насчет того, чтобы делать снимки с помощью приложения и распознавать изображения? Вы не можете сделать это с помощью веб-приложения, ориентированного на все мобильные устройства.

Tim Büthe 29.09.2010 22:10

Вы можете использовать API камеры с промежуточными остановками, например Телефонный разрыв. В противном случае скоро появятся реализации dev.w3.org/html5/html-device.

hendry 30.09.2010 12:16

Кроме того, рендеринг веб-представления на телефоне может быть намного медленнее, чем при использовании встроенных функций SDK.

Hari Ganesan 01.02.2014 03:44

Есть 2 [новых] решения именно этой проблемы:

ромобиль

и

телефонный разговор

хотел бы добавить Appcelerator (appcelerator.com) в этот список.

Tejaswi Yerukalapudi 01.04.2010 03:22

для богатых игр / приложений хотелось бы добавить Corona SDK

walter 30.04.2011 04:36

XMLVM (через Кокс и код) и EdgeLib в настоящее время кажутся наиболее зрелыми вариантами. EdgeLib нацелен в первую очередь на разработчиков игр, и, согласно Coke and Code, с разработчиками XMLVM сложно связаться.

С 2011 года ни на одном из этих веб-сайтов не было обновлений, поэтому я считаю этот ответ устаревшим по состоянию на 4 квартал 2014 года.

Gabor 24.10.2014 13:50

У нас есть кроссплатформенная платформа мобильной разработки 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.

Tim Büthe 29.09.2010 22:13

инструменты для создания приложений HTML5 перечислены здесь: stackoverflow.com/questions/5063117/…

Gabor 22.11.2011 15:21

Я нашел один игровой движок для этого Игры 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 для физики.

Другие вопросы по теме