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

Есть ли какая-либо единая структура для написания iOS, Android (и даже Windows Phone)?

Я хотел бы иметь платформу для кросс-платформенных платформ. Мое приложение требует службы определения местоположения, программирования сокетов, доступа к камерам и push-уведомлений. Итак, веб-приложение - это не путь... Есть ли какие-либо инструменты или рамки для этого? Спасибо.

4b9b3361

Ответ 1

Поскольку вы хотите получить доступ к специфичным для платформы функциям, таким как камера, GPS, уведомления и т.д., вам понадобится вызывать API для конкретных платформ.

Таким образом, по крайней мере, НЕКОТОРЫЙ из вашего кода приложения должен быть зависимым от платформы. Тем не менее, есть большая вероятность, что большинство ваших кодов приложений и логики можно разделить на нескольких платформах. Я бы настоятельно рекомендовал Mono как отличную многоплатформенную среду разработки. В Windows и Windows Phone ваш код будет запущен в .NET. Для Linux и OSX вы можете использовать Mono. Для Android и iOS вы можете использовать инструменты Xamarin.

Ключевым моментом здесь является то, что если вы упакуете свою логику приложения в "Portable Assemblies" (т.е. сборки, которые принимают зависимости от частей платформы .NET, доступных во всех реализациях CLI/CLR), тогда ваш код может вообще запускаться без изменений в Windows, Windows Phone, Linux, OSX, Android и iOS!

Все, что вам нужно сделать, это создавать платформы, специфичные для платформы, которые делают ваше приложение похожим на приложение с платформой, используя типичные элементы управления и метафоры дизайна различных платформ, которые вы хотите поддержать.

НТН.

Обновление 2012-04-06. Если вы хотите воспользоваться портативными библиотеками, обратитесь к обновленной документации по MSDN, которые относятся к недавно обновленной версии Portable Libraries, включенной в недавно выпущенную (и хорошо подходящую) бета-версию Visual Studio 11.

Обновление 2012-04-11. Новая статья под названием " Создание непрерывного клиента с использованием переносимых классов классов. был опубликован в выпуске журнала MSDN в марте 2012 года, в котором показано, как использовать PL для создания приложения для Windows Phone и Windows 8, которые используют одну и ту же основную бизнес-логику.

Ответ 2

http://phonegap.com/about - наилучшее приближение, которое я могу предоставить.

Ответ 3

Если вы не смотрите на веб-приложения, вы можете взглянуть на codenameone. Это java, и у них есть плагин для eclipse тоже.

Ответ 4

В последней версии Qt Framework (5.1) есть то, что они называют "технологическим просмотром" поддержки Android и iOS. Полностью выпущенная поддержка появится в скором выпуске версии 5.2.

Учитывая обширную и успешную историю Qt в качестве платформы кросс-платформенной разработки, я возлагаю большие надежды на это. (Отказ от ответственности: я использовал его только для разработки Win/Mac/Linux до сих пор...)

Ответ 5

Для собственной кросс-платформенной платформы вы должны проверить Crosslight. В настоящее время он поддерживает разработку приложений, ориентированных на iOS, Android, WP8 и Win8.

UPDATE: Crosslight включает в себя встроенные службы, которые вы ищете, например:

  • Услуги камеры: съемка с камеры, просмотр фотографий из галереи, извлечение обрезанного изображения, создание полной или миниатюрной версии.
  • Службы местоположения: получить текущее местоположение, получить местоположение по адресу, местоположение трека
  • Служба уведомлений: расписание службы локальных уведомлений
  • Службы подключения: проверьте доступность Uri, получите текущее соединение (WiFi или WWAN).
  • Многие другие полезные сервисы, такие как почтовые службы, службы браузера, сервисы карт и т.д.

Ответ 6

Вы пробовали Mono?

Ответ 7

Вы можете попробовать Sencha Его высокопроизводительная платформа для мобильных приложений HTML5. Работает для iphone, android и т.д.

Ответ 9

Обратитесь к этой Hybrid мобильной платформе приложений.