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

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

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

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

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

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

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

19 ответов


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

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


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


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

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


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

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

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


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

характеристики:

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

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


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


вы также можете посмотреть RoboVM.

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

редактировать Robo VM недавно объявил, что он будет закрывать службу - источник


вам нужно знать хотя бы основы Objective-C для разработки для iPhone. Однако можно использовать классы 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-mobile-apps-quickly/

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

база данных ---1--- > REST API ---2--- > приложение для iPhone / веб-сайт

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

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


Я отвечаю на этот вопрос через 2 года, и я должны стресс что у меня была почти такая же проблема, как и у вас. Однако я так счастлив, что 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 на основе Android приложений, портируемых на iPhone с помощью оборудования, отличного от Apple.

вы также можете проверить есть некоторые подробности (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 "мертвый" и т. д.).) Но теперь, это удивительно, что вы можете сделать с ним. Не говоря уже о богатстве открытый исходный код libs там.

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

  • iOS
  • Android (x86 и ARM)
  • Flash (все еще очень полезно)
  • ChromeBook
  • PC (как родной с установщиком)
  • 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 быстро создать фронтэнд. Теперь веб-приложение становится приложением в браузере.

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