AIR 2.6 и поддержка iOS

Посмотрел на iPad, глянул на свой HTC и понял, что давно не писал. Выдался повод – Adobe выпустила в свет AIR 2.6 для мобильных устройств.

Что главного? Да, пожалуй, только одно – поддержка iOS. Не надо теперь будет пользоваться костылями типа Packager for iPhone. Этот костыль заменил новый протез — AIR Developer Tool (ADT). Теперь, ребятки, вы можете пользоваться камерой и микрофоном, имеющимися у всех iOS-устройств, ну и конечно, осуществлена поддержка супер-пупер дисплея Retina.

Это всё, что я хотел отметить на счёт выхода AIR 2.6. Более подробно о новшествах в этом релизе вы можете почитать в статье Скотта Касла в Adobe DevNet. Обязательно прочитайте статью Кристиана Катрелла о поддерживаемых фичах iOS, а также посмотреть небольшой ролик от Райана Стюарта на тему разработки air-приложений для iOS.

AIR и LinkedIn

Вот тут Мик Чайзе рассказывает о том, как скоммутировать air-приложение с популярным на Западе сервисом LinkedIn. С примерами и видео.

Солёный!

Вы думаете это я сдурел, что такой странный заголовок дал этому сообщению? Нет, не верно – речь всего лишь выходе AIR 2.5.1 для моего андройдика – кодовое имя новой версии Saltier – то есть “Солёный”.

Не знаю почему разработчики назвали так, но в любом случае эта версия будет доступна в Android Market сегодня, 9 ноября.

Упаковку заказывали?

В лаборатории Adobe появился Packager for iPhone как же долго они работали над обновлением…

Ну и что? Думаете, оно быстро работает, создаёт маленькие файлы? Фиг!

Adobe и Intel дадут разработчикам миллион. Заработать

Adobe и Intel соединили усилия и открыли для разработчиков возможность монетизировать свои AIR-приложения – благодаря Intel AppUp Center и Melrose.

Вы думаете это реально заработать на ваших супер-пупер-клёвых-преклёвых AIR-приложениях? Мне вот – не верится.

P2P Video Calls on Android

Ух, какое видео появилось… Собственно, оно приурочено к скорому выходу AIR 2.5 для платформы Android.

Я люблю свой HTC Desire… Буду следить за этой темой! :)

FlashTime Demo — P2P Video on Android with AIR2.5 from Mark Doherty on Vimeo.

ORM в AIR

Хорошей новостью завершается для меня сегодняшний день – еще в октябре этого года в Adobe Edge появилась первая часть статьи об интеграции ORM в air-приложения; в ноябре второй части не последовало и я расстроился, а сегодня вот вышел декабрьский номер Edge, где появилась вторая часть статьи.

Возрадовался. Прочитал одним махом за несколько минут. Теперь жду завтрашнего дня – а глаза закрываются и спать после бессонной ночи хочется очень сильно – когда смогу испытать всё на деле.

А кто-нибудь уже испытал (?), поделитесь впечатлениями!

AIR 2.0

Вот не понимаю всех всхлипов о крутизне AIR. Тем более о первом бета-релизе второй версии. И что такого? Я суровый программист? :)

Защищённая БД SQLite для AIR-приложений

import flash.data.*;
import flash.filesystem.File;

private var dbConn:SQLConnection = new SQLConnection();
private var dbStatement:SQLStatement = new SQLStatement();

private function init(): void {
  // create a seed string of your choice
  var mySeed:String = "AIR15IsAGreatProduct";

  // prepare a bytearray variable to hold the encryption key
   var myKey:ByteArray = new ByteArray();

 // create the myKey ByteArray
  var i:int = 0;
  for (var j:int=0; j<16; j++) {
    // use hexToInt function and the seed to create the key
    i = (hexToInt(mySeed.charCodeAt(j))*15) +
hexToInt(mySeed.charCodeAt(j+1));

    // use the writeByte method - Writes byte to the byte stream
    myKey.writeByte(i&0x00FF);
  }
  var dbFile:File =
File.desktopDirectory.resolvePath("Encryptedemployees.db");
  dbStatement.sqlConnection = dbConn;

  //pass the key, myKey, to the open method of the SQLConnection,
dbConn
  dbConn.open(dbFile, SQLMode.CREATE, false, 2048, myKey);
}

private function hexToInt(hex:Number):int {
    return parseInt("0x" + hex);
}

Вот так выглядит создание защищённой SQLite-БД для использования в AIR. Увидел в Flex Cookbook, рецепт написал Майкл Гивенс.

Базовая http-авторизация в air-приложениях

Бесцельное чтение блогов прервалось вполне осмысленным методом организации базовой http-авторизации для flex/air-приложений, найденным в блоге Даниэля МакКея.

Поскольку задача интересная, то и решение – как водится – не очень изящное, но, что главное, работоспособное. Даниэль жалуется, что он испробовал два as3-проекта, заточенных для клиентских http-вызовов, но…

Так вот, Даниэль предложил вот что: посылать авторизационный заголовок в Request Header, но зашитый в base64:

# import mx.utils.Base64Encoder;
# var loader:URLLoader = new URLLoader();
var req:URLRequest = new URLRequest(cURL);
var headerRequests:Array = new Array(1);
req.method="get";

var headerRequests:Array = new Array(1);
var encoder64:Base64Encoder = new Base64Encoder();
encoder64.encode(cUsername + ":" + cPassword);

var credentials:String = encoder64.toString();
headerRequests[0] = new URLRequestHeader("Authorization", "Basic " + credentials);
req.requestHeaders = headerRequests;

После чего, при правильных логине/пароле вы не увидите никаких угрюмых диалогов, однако, чтобы вообще ничего не портило вам неописуемую красоту вашего air-приложения, то…

req.authenticate=false

Ещё одним важным пунктом является проверка доступности конкретного URL. Делается это вот как:

# loader.addEventListener(HTTPStatusEvent.HTTP_RESPONSE_STATUS,onStatus);
loader.addEventListener(Event.COMPLETE,onComplete);
loader.addEventListener(IOErrorEvent.IO_ERROR,onError);

# private function onStatus(event:HTTPStatusEvent):void {
Alert.show(event.status.toString());
}

private function onComplete(event:Event):void {
Alert.show(event.target.data);
}

private function onError(event:IOErrorEvent):void {
Alert.show(event.text);
}

Вот теперь спасибо тебе, Даниэль!

TimesReader

TimesReader – это air-приложение от влиятельной The New York Times. По существу – это ридер, только читалка именно данной газеты. А что, теперь и вы сможете говорить любому, что утром читаете свеженькую NYT. :)

AIRBrowser

fig01

В общем, попалась статья “Using Flash CS4 and Adobe AIR to build custom browsers for e-learning and social networking” на глаза достаточно случайно, но не отказал себе в удовольствии прочитать её. И вам того же советую.

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

Yahoo предлагает следить за Twitter’ом

… при помощи Yahoo! Sideline Twitter Monitor – небольшого air-приложения, вид которого на мой вкус весьма недурен.

Как видите, интерфейс в тёмных Adobe’овских тонах, но сделанный при помощи js-библиотеки Yahoo! User Interface Library. В общем, классная штука, что я решил воспользоваться моментом и создать себе Twitter-аккаунт, так что прошу любить и жаловать.

AIR 2.0 для вас это…

Есть что предложить? Тогда отправляйтесь к Ричу Третоле и выскажитесь. Там уже порядочное количество комментариев-предложений. Глядишь и ваше мнение будет услышано, и разработчики вместе с пользователями получат какую-то необыкновенную примочку в AIR 2.0

Pixel Bender Explorer: Bending Ext AIR Apps

Хм, хотя я не любитель ExtJS, но отмечу, что трудятся они вполне успешно. В том числе на ниве интеграции с Adobe AIR. Вот и теперь оторвались по полной – создали air-приложение Pixel Bender Explorer.

Adobe AIR Marketplace

Перезапустился Adobe AIR Marketplace – место, где вы найдёте множество всяких  air-приложений.

AIR Examples

AIR Examples – это новый ресурс, который открыл Питер ДеХаан. Любите и жалуйте и ресурс и автора.

Сертификационные дела

Adobe наконец-то опомнилась и позволила подписывать код AIR-приложений для частных разработчиков. Но, за дорого. Сертификат на один год частнику обойдётся в 199 долларов, на два – 349, на три – 498.

Линуксойдов принимают в ряды

Вышел Adobe AIR 1.5 для 64-битных версий Linux. Чтобы всё работало, вам нужно прочитать инструкцию.

Подробности в блоге у разработчиков.

RTMFP и другие определения

Интересные сокращения попадаются, сразу и догадаться невозможно. Вот как можно расшифровать RTMFP? Например, можно так: Real-Time Media Flow Protocol. Но программисты из Adobe решили, что сочетание букв слишком сложное, и придумали ему замену — не менее оригинальное кодовое имя — Stratus.

Признаюсь честно, я первый раз прочитал это слово как “страус” — наверное недавний поход в зоопарк сыграл свою роль… Но, прочитав ещё раз, я задумался. Кому пришло в голову назвать разработку “слоистым облаком”, ибо “stratus” переводится именно так? Чтобы это значило?

Оказывается, это коммуникационный протокол, и вы, по словам создателей, можете воять разного рода RIA-приложения, наподобие видео-чата, мульти-плеерных игрушек или передавать голос, типа web-телефона. Ну вы и сами можете посмотреть — видео-телефон.

Чтобы пользоваться Stratus’ом, вам понадобится ключ, который вы можете получить перейдя по этой ссылке. А чтобы успешно начать — прочитайте статью Йозефа Васса “Stratus service for developing end-to-end applications using RTMFP in Flash Player”.

Чтобы не задаваться вопросами, прочитайте официальный Stratus FAQ.

© 2008, Adobe — наш верный друг. Все права защищены.
Работает под управлением WordPress и темы GimpStyle, созданной Horacio Bella.
RSS-фид сообщений | RSS-фид комментариев | Валидный XHTML- и CSS-код.