Написание приложения для Android и iOS
Я хочу написать приложение, которое может работать как на устройствах Android, так и на Apple. На данный момент я нашел несколько решений:
-
Пишите все дважды
-
Используйте фреймворк, такой как Appcelerator Titanium или PhoneGap,
-
Используйте С++, а затем напишите части пользовательского интерфейса как в Java, так и в Objective-C (так как С++ можно запустить на обеих платформах),
Каковы ваши впечатления и предложения по этой проблеме?
Ответы
Ответ 1
Это зависит от вашего проекта. Если вам нужно разработать что-то относительно сложное, лучше всего разрабатывать отдельно для каждой платформы. Это связано с тем, что вам обязательно нужно будет учитывать сложные проблемы/ошибки, которые не могут быть устранены напрямую через общий API-интерфейс посредника, например. в отношении потоков, кеширования, управления хранилищем данных. Этот подход позволяет вам воспользоваться преимуществами, которые может предложить каждая платформа. Сторонние платформы также медленнее внедряют новые собственные функции при выпуске новой версии SDK/OS.
Тем не менее, такая платформа, как вы упомянули, достаточна для проектов с низкой сложностью и может значительно снизить стоимость разработки. Вам необходимо тщательно оценить ваши потребности.
Также обратите внимание на это особое предостережение: будущие расширения. Вы можете оказаться ограниченным сторонним API, если вам нужно добавить новые функции в будущем.
Ответ 2
Я знаю, что вы уже решили разрабатывать отдельно для каждой платформы, однако, по моему опыту, если приложение не слишком сложно, что-то вроде PhoneGap идеально.
Это позволяет вам разработать 1 базу кода для нескольких платформ вкл. Android, iOS и Blackberry, он также дает вам возможность использовать некоторые из нативных функций, таких как доступ к камере, телефонные звонки и т.д.
Мы начали использовать это в нашей компании, и я нашел его настолько простым в использовании, что я выпустил свое приложение - Tic Tac Toe Go
Ниже приведена ссылка на основной сайт телефонной сети и несколько очень полезных страниц для документации:
http://phonegap.com/
http://docs.phonegap.com/en/1.3.0/index.html
http://wiki.phonegap.com/w/page/16494772/FrontPage
Надеюсь, что это поможет в будущем.
** EDIT **
Несколько дополнительных инструментов, которые вы можете использовать, следующие:
1 - Xamarin
2 - QT
Ответ 3
Попробуйте Codename one: один SDK на основе JAVA для кода в WP8, Android, iOS
Особенности:
- Полная среда Android с супер быстрым симулятором Android.
- Симулятор iPhone/iPad с легким переносом приложений iPhone на iPad с большим экраном в считанные минуты.
- Полная поддержка стандартной отладки Java, профилирование приложений на любой платформе.
- Легкая тема/стиль - всего лишь один клик.
Подробнее в Разработать Android, iOS iPhone, приложения WP8 с помощью Java
Отказ от ответственности: эта ссылка относится к моему обзору продукта, пробег может отличаться:)
Ответ 4
Вы можете написать webapp, theres jquerymobile (все еще в альфе), чтобы помочь вам.
Ответ 5
Я предлагаю попробовать Corona. Он работает потрясающе для меня (для игр) и поставляется с Mac и симулятором Windows.
Ответ 6
XMLVM - это проект, который, как говорят, имеет возможность конвертировать приложения Android в iPhone. Требуется некоторое время для начала работы, но очень полезно для преобразования большого количества кода с Java на Objective-C. Кроме того, он позволит вам сделать окончательные изменения самостоятельно.
Ответ 7
Ответ зависит от вашего развития. Лично я хотел бы использовать подход на основе MVVM, используя MonoTouch и MonoDroid. Вы получаете код на С# для обеих платформ и можете совместно использовать (если правильно) большую часть вашей логики между обеими платформами и сосредоточиться только на уровне представления для каждой отдельной платформы.
Я бы полностью держался от слоев абстракции на основе HTML5/Javascript. И это утверждение исходит от кого-то, кто абсолютно укоренился в разработке HTML5/Javascript Development с помощью Knockout.
Ответ 8
Появился новый инструмент для iOS/Java, может быть интересным http://www.indiegogo.com/projects/migeran-write-ios-apps-in-java
Ответ 9
Отметьте http://www.airplaysdk.com/
Вам нужно написать приложения на Visual С++, и они могут работать на многих других форматах, чем iOS и Android.