Метка «cross-platform»

image

Аннотация

В статье описывается фреймворк, позволяющий создавать графические кроссплатформенные приложения, написанные на языке Java, но при этом абсолютно не зависящие ни от Oracle JRE, ни от OpenJDK. Основная идеология фреймворка — по возможности снять с разработчика заботы об обеспечении «родного» look and feel для приложения под каждой операционной системой.

Фактически, на выходе вы получите исполняемый файл, опирающийся только на системные API, на котором нигде не будет клейма «написано на Java».

Все компоненты фреймворка имеют либеральные лицензии (BSD либо Apache), что позволяет использовать их в любых (в том числе, коммерческих) разработках.

Фреймворк находится в стадии публичной alpha-версии, что означает некоторую его работоспособность, но непроверенность. Использование поощряется (я постараюсь прислушаться к жалобам на проблемы и помогу их решить), но работоспособность не гарантируется.

Готовая, собранная версия приложений, демонстрирующих работу фреймворка под всеми платформами, находится здесь.

Всех интересующихся подробностями милости прошу под кат.
Читать полностью »

В этом топике мы хотим поделиться нашим опытом создания мобильных приложений на платформе для разработки кроссплатформенных приложений Titanium. Примерно с 2011 мы начали работы с кроссплатформенными фреймворками. Сначала это был PhoneGap, потом Titanium. Сделали десяток приложений, работающих и по сей день, как в России, так и в США. Мы сознательно хотим отойти от оценок — плохо это или хорошо разрабатывать кроссплатформенные приложения, а сосредоточиться на тех трудностях, с которыми предстоит столкнуться с точки зрения разработки и сопровождения этих приложений.

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

Итак, начнем со списка проблем, с которыми вам придётся столкнуться.

Проблемы:

  1. Проблема дабл-кликов.
  2. If’ный код.
  3. Управление памятью на Android.
  4. Недостаточная реализация отдельных функций, в том числе стандартных.
  5. Javascript — отсутствие типизации замедляет процесс написания кода и усложняет сопровождение.
  6. Отсутствие InterfaceBuilder — замедляет процесс написания приложения, весь UI пишется в коде.
  7. Titanium SDK обновляется позже SDK операционных систем.
  8. Каждая версия SDK содержит исправление старых ошибок и привносит новые ошибки.

Примеры, на которых мы столкнулись с этими проблемами.

Читать полностью »

Добрый вечер, читатели! Сегодня хотелось бы написать о кросс-платформенной разработке в целом. Ведь по сути люди сейчас делят десктоп, сервер и мобильных клиентов и стараются искать кросс-платформенные тулы внутри каждого сектора, не заглядывая за рамки каждого из секторов. Это бывает по различным причинам. Одна из причин — Вася знает как делать десктоп на Java, а Петя — как делать приложеньки под iPhone на Objective-C. И никто даже догадаться не может что есть технологии, объединяющие все платформы воедино.

За катом много текста и статистики :)

Мое выступление на Apps4All Forum. Выступление первое, все ошибки подачи материала уже намотал на ус :)

Читать полностью »

Не секрет, что в последнее время кроссплатформенные мобильные free-to-play игры стали основным направлением деятельности большого числа игровых компаний. В этой статье мы не будем говорить ни о причинах, которые к этому привели, ни о перспективах данного направления. Компании изменили свои бизнес-модели, начертили схемы монетизации и игровых циклов, помолились на SCRUM и Agile, однако в статье речь пойдет и не про это. Игры по-прежнему нужно делать качественно, нужно правильно выбирать технологии, нужно понимать, что ждать от загадочного free-to-play и с чем придется столкнуться. В этой статье мы рассмотрим 5 наиболее важных технологических проблем, возникающих при создании кроссплатформенных мобильных free-to-play игр.
Читать полностью »

Apportable SDK — это продукт, который позволяет без изменений скомпилировать игру (или приложение), разработанное на Objective-C/Cocoa Touch для iOS под Android. Это полный toolchain (компилятор, дебаггер, линковщик — все-все-все), работающие Foundation, CoreFoundation, UIKit, множество других фреймворков из состава iOS, перенесенные на Android (даже такая «мелочь» как GameKit и StoreKit, с бэкендами для GooglePlus и Amazon GameCircle/Appstore).

Цель Apportable — дать iOS разработчику перенести свое приложение на Android за час, без изменения кода, и поддерживать после этого одну кодовую базу. Как портировать простую игрушку на cocos2d — под катом
Читать полностью »

Titanium Cloud Service

Titanium Cloud Service — является простым и удобным способом избежать создания сервера для работы с мобильным приложением, воспользовавшись уже готовыми решениями от Appcelerator.

Titanium Cloud Service: отправка писем без вызова email dialog

Cloud Service поддерживает использование Push Notifications, отправки почтовых сообщений, хранение большого объема фотографий и многое другое.

Следует отметить, что существует несколько тарифных планов для Cloud, но для начала работы бесплатной версии более чем достаточно. Данная версия предоставляет такие возможности как: 5 миллионов Push Notifications, 5 миллионов API вызовов, 20 гигабайт свободного места на сервере, 100 тысяч почтовых писем в месяц, что, на мой взгляд, очень неплохо.

Читать полностью »

На сегодняшний день существует немалое количество обзорных статей о PhoneGap, но к сожалению, написаны они или front-end разработчиками, которые решили заняться мобильными платформами, или нативными программистами, которые решили попробовать себя в кроссплатформенной разработке. И именно с этих позиций рассматриваются достоинства и недостатки PhoneGap'а, возникают статьи о том, «насколько крута кроссплатформа», или об «ущербности кроссплатформенных решений».

В качестве затравки — видео демо-приложения, написанного за 6 часов; готовым был взят UI-бутстрап, наверстанный за 3,5 часа; использовались библиотеки iScroll, backbone, underscore, Jquery, и небольшая обертка на backbone (RAD.js — rapid application development, архитектурный фреймворк, берущий на себя часть оптимизации, связанной с мобильной средой выполнения).

Еще 2 часа было потрачено на фикс движка. Но сегодня речь не о том, что что-то тормозит, дергается, или самописный свайп не всегда вовремя отрабатывает на 14000 объектах данных; речь о том, что на PhoneGap можно и нужно писать.

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

image

6 июля 2013 года в 13:00 по Москве(10:00 по Гринвичу) состоялась вторая online конференция ruHaxe.
(отчёт о первой конференции)
Доклады были настолько интересны, что оторваться от трансляций было невозможно, и если на первой темы были посвящены больше программированию, то в этот раз были затронуты довольно специфичные вопросы.

Читать полностью »

Отчёт по онлайн конференции RuHaxe #18 июня 2013 года прошла онлайн-конференция RuHaxe — первое событие в рунете, посвященное Haxe-платформе.

В рунете пока мало Haxe-разработчиков, но среди них есть уже достаточно заметные в мировом Haxe-комьюнити, и есть потребность в общении на родном языке, которая и стала мотивацией для организации RuHaxe. Несмотря на фактическое отсутствие рекламы, первую конференцию посмотрели 50 человек. С этого момента можно считать, что в рунете появилось пока небольшое, но активное сообщество Haxe-разработчиков.

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

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

Читать полностью »