Настройка Jenkins CI на Mac OS X для сборки Android- и iOS-приложений Phonegap/Cordova и размещения их в TestFlight/HockeyApp

Разработка мобильных приложений в большинстве случаев является весьма увлекательным занятием, особенно если вам самим нравится то, что вы создаете. Работая с приличным количеством внешних проектов (мы разрабатываем приложения и сайты на заказ), а также с растущим числом своих внутренних приложений, мы задумались о минимизации времени и сил затрачиваемых на подготовку тестовых и релизных сборок приложений. При наличии нескольких разработчиков, тестировщиков и приличного числа проектов, затраты на подготовку сборок становятся весьма существенными. Поэтому чтобы не тратить силы зря и заниматься тем, что действительно важно для ваших сервисов, предлагаем инструкцию по созданию системы автоматической сборки приложений. Описанный далее подход мы используем, в первую очередь, в своих приложениях, с которыми предлагаем вам познакомиться: Together, PhotoSuerte, Routes.Tips. Continue reading

Best Practices для взаимодействия сервера и приложения

iOS Best Practices

Сейчас, в эпоху роста и развития мобильных приложений, всё более актуальным становится правильное построение клиент-серверного взаимодействия. При взаимодействии мобильного приложения с сервером следует обратить внимание на следующие моменты: гибкость, расширяемость, документирование, поддержка старых версий API, кеширование. В этой статье мы рассмотрим наиболее важные аспекты разработки и проектирование сервисов, которые помогут достичь лучших результатов. Continue reading

Использование Google Cloud Messaging в Adobe AIR приложениях

Использование Google Cloud Messaging в Adobe AIR приложениях

Мультиплатформенность технологии AIR — это, безусловно, палка о двух концах. С одной стороны мы можем написать приложение Flex или ActionScript, которое будет корректно работать на всех возможных платформах, поддерживаемых AIR. С другой стороны, разработчики очень сильно ограничены тем, что AIR не всегда может предоставить весь набор инструментов для использования функционала, присущего только определенной платформе или конкретному устройству. К счастью, существует возможность написания расширений на родном для конкретной платформы языке. В такие расширения мы можем заложить функционал, присущий только этой среде. Данные расширения называются Native Extensions и подключаются к AIR-проектам как внешние библиотеки.

В своей работе мы очень часто используем подобные расширения. В данной статье речь пойдет о расширении as3c2dm, разработанным Piotr Walczyszyn, позволяющем получать push-сообщения и отображать их в панели уведомлений. Мы в своей работе активно используем данное расширение. В процессе его использования был выявлен ряд ошибок и неудобств, которые мы постарались исправить. Continue reading

Поддержка различных размеров экрана в мобильных AIR приложениях

Мультиплатформенность AIR и огромное количество устройств на которых возможна работа AIR-приложений обязывают разработчиков учитывать все разнообразие экранов, их разрешений и DPI. Несмотря на все разнообразие платформ, в данной статье мы рассмотрим разработку для различных экранов только применительно к разработке мобильных AIR-приложений с использованием Flex фреймворка. Continue reading

Оптимизация списков в мобильном приложении

Во многих мобильных приложениях главным компонентом взаимодействия с пользователем является список. Очень часто он состоит из большого количества визуальных элементов, содержащих текст и иконки. Поэтому так важен вопрос оптимизации списка и элементов отображения внутри него. Continue reading

Релиз Flash Player 11.4 и AIR 3.4

Недавно корпорация Adobe анонсировала выпуск новой версии Flash Player, а также AIR-продуктов, предлагающих весьма интересные, на наш взгляд, функции:

  • Поддержка большего количества видео карт в Stage3D
  • Многопоточность (ActionScript Workers)
  • Поддержка уведомлений iOS Push Notifications в AIR
  • Прямая публикация AIR приложений на iOS
  • Поддержка iOS 5.1 SDK
  • Carbon APIs больше не поддерживается AIR
  • Сжатые текстуры с альфа-каналом в формате ATF
  • Ambient AudioPlaybackMode
  • StageVideo.attachCamera
  • Camera.copyToByteArray/Camera.copyToVector
  • Поддержка ByteArray в LZMA

Ниже мы предлагаем вам ознакомиться с некоторыми из нововведений более подробно. Continue reading

Разработка AIR видео приложений под Android

android video apps
Сегодня смартфоны и планшеты стали неотъемлемой  частью нашей повседневной жизни. Люди взаимодействуют с этими устройствами много раз за день и проводят много времени за этим занятием. Мобильные и планшетные приложения стали важными каналами распространения контента. Запуск практически любого крупного сервиса включает в себя специализированное приложение. Сегментация мобильных приложений сильно увеличивает затраты на реализацию мобильной стратегии. Adobe AIR позволяет снизить затраты на запуск кроссплатформенных сервисов, разработанное один раз приложение проще адаптировать под разные устройства, экраны (кроме того, хороших Flash разработчиков гораздо больше чем хороших iOS и Android специалистов). В этой статье мы расскажем про некоторые особенности разработки мобильных приложений при помощи Adobe AIR. Continue reading

Стратегия Adobe Flash для мобильных устройств

Adobe
Недавнее объявление Adobe о новой стратегии Flash платформы для мобильных устройств наделало много шума в отрасли. Причина шума в особенностях коммуникаций и недопонимании, что является виной Adobe в первую очередь. Последовавшие разъяснения развеяли многие опасения и преувеличения новостных таблоидов. В этой статье мы подробно рассмотрим грядущие изменения и их влияние на онлайн видео проекты. Continue reading

Flash Access 3: DRM в Android устройствах

android video drm

Популярность мобильных устройств подталкивает большинство онлайн видео проектов на адаптацию своих сервисов к мобильным приложениям (планшетам, смартфонам). Учитывая, что многим онлайн видео сервисам требуется защита видео контента (например, для возможности предоставления библиотеки контента от крупных западных киностудий), то весьма актуальной задачей становится реализация DRM функций в мобильном видео плеере. Как всегда перед Вами множество решений и платформ. Про DRM функции в iOS мы уже недавно писали. Теперь пришло время поговорить про Android DRM. Continue reading

Разработка видеоплеера для Android

Android Video Player

Одна из задач, с которой вы можете столкнуться http://kakielekarstva.ru/  при разработке приложения для Android — это встраивание видео плеера в приложение, для воспроизведения видео контента. Стандартный SDK предоставляет два пути решения этой проблемы: использовать низкоуровневый класс MediaPlayer или готовый визуальный компонент VideoView совместно со стандартной панелью управления воспроизведением MediaController. Оба эти подхода обладают своими недостатками, поэтому мы решили разработать собственный видеокомпонент AVideo. В этой статье мы расскажем о том как его использовать в своем приложении и какие преимущества он дает. Continue reading