Как можно разрабатывать приложения для iPhone на Java?

В classе компьютерных наук я выполнил все свои проекты; Поэтому мой учитель подумал, что было бы неплохо разработать приложения для IPhone. Единственные проблемы в том, что class преподается в Java, а приложения IPhone написаны в Objective-C.

Мне было интересно, если кто-то разработал приложения на Java, с XMLVM.

Этот компилятор (предположительно) преобразует java-байтовый код в Objective-C (без необходимости использования яблочного компьютера или знаний Objective-C). Это верно?

http://www.xmlvm.org/overview/

Вот пример кода Java-кода, используемого на IPhone:

http://www.xmlvm.org/iphone/#

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

Большинство кросс-компиляторов не будут делать отличную работу по преобразованию вашего кода, и отладка вашего проекта может стать намного сложнее, если вы разработаете их таким образом.

Не совсем ваш ответ, но почему бы не попробовать некоторые разработки Android? Нет необходимости в Mac, с открытым исходным кодом, без инвестиций, на основе Java.

Я думаю, нам придется подождать еще пару лет, чтобы увидеть больше прогресса. Тем не менее, в настоящее время существует больше доступных рамок и инструментов:

Вот список из 5 вариантов:

  • Codename One
  • RoboVM <- Закрыто
  • птичий
  • XMLVM
  • J2ObjC
  • Многофункциональный движок Intel

Я думаю, ваш учитель послал вас по неправильному пути.

Это classический пример попыток поместить квадратный штифт в круглое отверстие. Лучший способ разработки для iPhone – это iPhone SDK и цель C. Лучшим способом разработки для Andriod является Java и Android SDK. Лучший способ разработки для WinMobile – это C # / VB и .Net Framework.

Как вы видите, у каждого есть свой «лучший» SDK. Поскольку вы только изучаете Java, я бы предпочел играть с Java и Android.

Существует новый инструмент под названием Codename one : один SDK на основе JAVA для кодирования в WP8, Android, iOS со всеми расширенными функциями

Особенности:

  1. Полная среда Android с супер быстрым симулятором Android
  2. Симулятор iPhone / iPad с легкостью переносит приложения iPhone на iPad с большим экраном за считанные минуты.
  3. Полная поддержка стандартной отладки java, профилирование приложений на любой платформе.
  4. Легкая тема / стиль – всего один щелчок

Подробнее о разработке Android, iOS iPhone, приложений WP8 с использованием Java

посмотрите проект codenameone.com, это платформа для кросс-платформенных мобильных устройств, где часть ui является вилкой LWUIT. Этот проект использует xmlvm для перевода кода Java-байта в Objective C

Вы также можете взглянуть на RoboVM .

Он преобразует байт-код Java в собственный ARM-код или код x86, который может работать непосредственно на процессоре без необходимости использования VM или интерпретатора. Большинство элементов пользовательского интерфейса Obj-C уже подключены к Java и следуют обычным шаблонам Java.

Редактировать Robo VM недавно объявила, что это приведет к отключению службы – Source

Вам нужно знать, по крайней мере, основы Objective-C для разработки для iPhone. Тем не менее, можно использовать classы C ++.

Насколько я знаю, Adobe работает над созданием приложений Flex / Flash для iPhone. Подробнее здесь: http://theflashblog.com/?p=1513

Вы не можете.

Обратите внимание, что Monotouch позволяет вам развиваться на C # вместо Objective-C. http://monotouch.net/

Если вы планируете интегрировать функциональность приложения с веб-сайтом, я бы настоятельно рекомендовал модель GWT + PhoneGap:

http://blog.daniel-kurka.de/2012/02/mgwt-and-phonegap-talk-at-webmontag-in.html http://turbomanage.wordpress.com/2010/09/24/gwt-phonegap -native-мобильные-приложения-быстро /

Вот мои два цента из моего собственного опыта: мы используем одни и те же Java POJO для нашей базы данных Hibernate, нашего REST API, нашего веб-сайта и нашего iPhone-приложения. Рабочий процесс прост и красив:

База данных — 1 —> REST API — 2 —> iPhone App / Website

  • 1: Спящий режим
  • 2: Сериализация GSON и десериализация GWT JSON

Для этого подхода есть еще одно преимущество: любой Java-код, который может быть скомпилирован с помощью GWT, и любая библиотека JavaScript становятся доступными для использования в вашем приложении для iPhone.

Я отвечаю на этот вопрос два года подряд, и я должен подчеркнуть, что у меня была такая же проблема, как и у вас. Однако я так счастлив, что Android превратился в то, чем он является сегодня.

Сказав это , я сожалею о том, что я не изучал C / C ++, пока мог, и я не хочу обвинять своих учителей в этом, где мой мозг, когда настало время?

Я сегодня погружен в Java, и я рад, что не ошибся в обучении слишком многих языков и был менее продуктивным … Однако я изучил HTML5, который действительно упростил многое, может быть, когда-нибудь, я мог бы получить мотивированный для изучения C / C ++. Или, если я получу Apple Mac по реальной цене, я мог бы изучить Objective-C 🙂

Я думаю, что Google Open Sources Java To Objective-C Translator сделает возможным создание на Java для iOS https://code.google.com/p/j2objc/

попробуйте использовать TotalCross . Это Java Framework, чтобы помочь разработчикам создавать приложения для iOS и Android только с одним исходным кодом. В отличие от других платформ, он не требует каких-либо знаний в iOS (Objective-C или Swift) и Android (SDK или NDK)

есть интеграция maven https://gitlab.com/totalcross/TotalCross/wikis/building-with-maven

http://www.xmlvm.org/android/

В частности, речь идет о приложениях на базе Java на Java, которые переносятся на iPhone с использованием аппаратного обеспечения, отличного от Apple.

Вы также можете проверить MonoTouch (C #, а не Java … но они очень похожи).

Возможно, вам стоит рассмотреть приложения для Android вместо приложений iPhone, если вы действительно хотите разрабатывать Java для смартфонов. Android изначально использует Java для своих приложений; возможно, это может быть лучшим вариантом?

Что касается iPhone, я бы рекомендовал вам изучить Obj-C или C / C ++ в зависимости от типа приложений, которые вы хотите сделать. Должно быть забавно баловать себя новым языком! 🙂

Вы можете попробовать iSpectrum (получить его на http://www.flexycore.com ). Вы сможете разрабатывать и отлаживать свои Java-приложения в Eclipse. Вам все равно понадобится Mac и XCode, чтобы запустить его на симуляторе или установить на реальном устройстве. Но вам не нужно будет использовать редактор XCode. Кроме того, вы можете использовать его бесплатно, если планируете работать над проектом с открытым исходным кодом.

Чтобы добавить к этому: http://www.oracle.com/technetwork/developer-tools/adf-mobile/overview/index.html

Основанная на Java и HTML5 платформа для разработки
Oracle ADF Mobile позволяет разработчикам создавать и расширять корпоративные приложения для iOS и Android с единой базы кода. На основе гибридной мобильной архитектуры ADF Mobile поддерживает доступ к собственным службам устройств, позволяет автономным приложениям и защищает инвестиции предприятий от будущих изменений в технологии.

Даже если в вопросе говорится о Java, большинство ответов отступили. Поэтому я думал, что буду делать то же самое 🙂

Мы используем Adobe AIR в течение последних 5 лет, и это действительно кросс-платформенный интерфейс и обеспечивает производительность, аналогичную той же кодовой базе (по крайней мере, 99% нашего кода одинаковы). Adobe AIR в начале «бета-тестирования» (например, медленный, без GPU, Flash «мертвый» и т. Д.) Получил плохую прессу. Но теперь удивительно, что вы можете с этим сделать. Не говоря уже о богатстве библиотек с открытым исходным кодом.

С той же базой кода вы можете нажать на свое приложение:

  • IOS
  • Android (x86 и ARM)
  • Вспышка (все еще ОЧЕНЬ полезна)
  • ChromeBook
  • ПК (как родной с установщиком)
  • Mac (как родной с установщиком)

Зачем беспокоиться о Java или Objective-C?

Единственная распространенная платформа, на которую не распространяется, – Window Phone. Но это тоже скоро.

Создайте гибридное приложение. В любом случае Java недостаточно для инженера-программиста, вам нужно научиться JS, HTML5, CSS, а также стать полнофункциональным разработчиком мобильных приложений. Создайте полный бэкэнд с помощью Java & frontend, используя Cordova / Phonegap.

Я предполагаю, что вам не нужна последняя капля сока из оборудования, даже приложение hybind должно удовлетворить ваши потребности.

Создайте отзывчивый webapp, используя Bootstrap 4 + React JS. Используйте https://github.com/ipselon/structor, чтобы быстро создать интерфейс. Теперь веб-приложение становится приложением в браузере.

Вы также можете взять то же приложение и построить его с помощью кордовы, чтобы опубликовать приложение на платформе ios / android.

  • Зачем писать 1000 000 000 как 1000 * 1000 * 1000 в C?
  • Префикс имен свойств с подчеркиванием в Objective C
  • Загрузка изображения через POST в Objective C
  • Как я могу получить UIBarButtonItem с изображением и текстом?
  • Почему переменная NSInteger должна быть отброшена дольше при использовании в качестве аргумента формата?
  • Учебники по использованию HTTP POST и GET на iPhone в Objective-C
  • Как преобразовать NSInteger в int?
  • Как я могу подключить iPhone и веб-службу и получить данные XML?
  • Преимущества и недостатки #define против констант?
  • Каков наилучший способ поместить c-struct в NSArray?
  • Как называется эта форма определения?
  • Давайте будем гением компьютера.