Pull to refresh

Comments 48

Немного странно выглядит крестик по HTML5 Desktop Apps для AIR, в котором изначально был путь для создания приложений на html+js, без флеша, и крестик в отношении наличия возможности у AIR по custom libraries (см. AIR Native extensions)
Я тоже обратил внимание пункт по HTML5 Desktop Apps, смело заявлено, согласен. Думаю, это возможность экспорта готового HTML5 (во взаимодействии с Flash и CSS3) в исполняемый файл.
Но в отношении второго… хоть убей те меня, но не видел я чтоб Air умел DLL сторонние подгружать в свои приложения (сталкивался, пробовал — не получилось)!
www.as3nui.com/air-kinect/- вот это пробовали — работает, там как раз DLL. Только собственные, аккуратно собранные, но умеет. Т е просто DLL нет, а вот custom DLL — это как раз оно и есть, в моем понимании.
Штука крутая! Но я что-то я не пойму, она что в итоге делает с Adobe Air приложением? Создает из него ехе-шник, который можно запускать без установки оболочки Adobe Air? Т.е. он перекомпилирует все? Это как такое возможно? Или я не так что-то понимаю.
Нет, в код компилированного Adobe Air цинк не лезет, он как бы является аналогом Adobe Air… тоже компилит на выходе ехе-исполняемый фал, но со своими фишками.

Приложения Adobe Air не могут работать без установки соответствующего плигина от Adobe, а Цинк может, т.к. всё необходимое уже упаковывается в готовый ехе.
Работает только с SWF (на выходе ехе, ну или другой формат для платформ Mac и Linux), а каким способом ты получишь этот SWF, дело другое… Если можно так сказать, Цинк умеет читать компилированный код ActionScript и дополнять его своим функционалом.
А как приложения допускаются в AppStore? Там же вроде air не должен проходить.
а там не Air проходит, а формат МАСа
Если я правильно понял то Цинк делает копию swf но на своем языке. Или я ошибаюсь? Тогда насколько корректно воплощены функции флэш платформы? Например BlurFilter
Все фичи Флеша работают также само как и в родном плеере + функционал Цинка
Прочитал еще раз… Все это похоже на рекламную расписную гамазню… Нужно щупать, и пробовать, есть большие сомнения на счет всех этих возможностей…
Это не гомозня… это авторский переворд с оф. сайта, с небольшими коррективами.
Что касается предмета разговора, то Цинком пользуюсь уже года 2 как. Нареканий нет! Есть баги и глючки, не без этого, но это только от криворукости… и сырости продукта в предидущих версиях. Сам к компании МДМ никакого отношения не имею, какой ризон мне что-то рекламировать. Просто поведал о возможностях, так сказать.
А вообще, рекомендую, попробуйте…
до сих пор вспоминаю те времена, когда Флеш был ограничен в функционале, ну например — доступ к файловой системе… все эти границы стираются, когда есть Цинк (кстати, из-за перепетий во взглядах на политику безопасности, Адоб даже пыталась устраивать судебные разбирательства, что мол наша платформа запрещает доступ к файлам клиента в определённых случаях, а вы тут все карты в руки… пространство для хакеров типа).
А… тогда понятно, раз это перевод с сайта. Ну просто есть этот тон прессрелизный, в любом случае интересная штука обязательно попробую. Спасибо.
А этот MDM скрипт, если я правильно понимаю, типа вшитый модуль в оболочку, и все управление им пишится на AS
Всё пишется изначально во Флеш IDE, ну или совместимом. Т.е. рядом со строками Экшн скрипт прописыватся дискрипторы Цинка, Флеш не ругается, если подгружена библиотека от Цинка… потом это всё компилится в готовый SWF, а после открывается и компилится в Цинк-девелопе, котрый отискивает свой и AS код и доводит всё до фурора.

Вот примеры, от разработчиков:
multidmedia.com/support/exchange
т.е. в свой проект я должен добавить библиотеку от цинка…
и в коде писать еще какой-то дополнительный код, рядом с методами AS чтоб цинк в конце концов все правильно сделал? А рядом с какими строками я должен это писать? Не понятно совсем. Можно увидеть не большой кусочек кода на AS вместе со строками цинка. С пояснениями.

И много писать нужно кода для цинка?
1). Да, Вы должны добавить библиотеку от цинка в среду, в которой пишете флеш.
2). Дополнительный код необходимо писать там, где требуется взаимодействие и результат работы Цинка.
3). Рядом с теми где это нужно. Ну например, необходимо получить разрешение экрана клиента, где было запущено приложение:
var resolutionInfo:Array = mdm.System.getResolution();

// resolutionInfo[0] = Width
// resolutionInfo[1] = Height
// resolutionInfo[2] = Color Depth
// resolutionInfo[3] = Refresh

В результате, после компиляции во флеше и Цинк Билдере переменная-массив «resolutionInfo» будет иметь все необходимые данные. Но только после обработки Цинком. Т.е. после вывода мувика во флеше, рассчитывать на заполненный массив данными нет смысла.

4). Много, я первое приложение вообще только на Цинке писал, ActionScript только как связующая шла.
совершенно верно, это своего рода расширения классов АС, только с «mdm.*» начинается.
Библиотеку для Флеш, после установки, можно найти в папке:
...\Zinc 4.0\swc\flash\

Библиотеку для Флекс, после установки, можно найти в папке:
...\Zinc 4.0\swc\flex\

После подключения библиотеки, в коде её необходимо инициализировать.
Вот примерный код инициализации библиотеки MDM Zinc в коде ActionScript 3:

// in complex implementations initialization flags can be used
if(initialized == false) {
initialized = true;
mdm.Application.init();
// other code to run during init
};


Сам код, может выглядеть примерно так:
function loadFile() { // инициализация функции по правилам ActionScript

// Задаём параметры для Цинк-класса "Dialogs", а конкретно для функции открытия диалога загрузки файла "BrowseFile"
mdm.Dialogs.BrowseFile.filterList = "Text Document|*.txt";
mdm.Dialogs.BrowseFile.title = "Open a file";
mdm.Dialogs.BrowseFile.buttonText = "Open";
fileName = mdm.Dialogs.BrowseFile.show();

if (fileName == "false") { // а это логическое условие из ActionScript

} else { // и это тоже ;)
...


Из кода видно, что Цинк полностью подчиняется синтаксису приемлемого для ActionScript расширяя его функционал.
Да спасибо, все понятно, библиотека цинка дополняет необходимый функционал к флэшу, чтобы ему стать полноценным десктоп апп.

Скачал цинк.
Создал проект.
Добавил самую простую swf с тремя кнопками.

Из меню говорю
Project->Build Project

Получаю
ERROR: Extracting Stub

Что не так делаю?

при компиляции необходимо включать чекбоксы с используемыми в теле swf классами Цинка, + необходимо выбрать версию на которой написан флеш 10 или 11…
обычно тиакая ошибка вылетает, если Вы компилируете проект, который уже запущен в исполненном виде и не может получить доступ к пакуемому ехе (т.н. двойная компиляция), посмотрите внимательней, может проект уже запустился и висит в трее (Цинк на автомате запускает проект из ехе).
В свое время этот замечательный продукт помог мне завершить проект для диплома. Но черт возьми, как я жалел, что Adobe AIR не появился на пару месяцев ранее моей защиты :)
А почему, что Цинк так не понравился?
Не понял, существует ли Zink под Linux, или он только в компилировать под Linux умеет?
Только для Windows или Mac OSX, а компилирует под все три ведущие платформы.
К сожалению такой поддержки нет, но ведь Android SDK и Eclipse никто не отменял.
Мы используем Zinc 4.0 в нашей игре (http://colorop.us/).
Для поддержи правой кнопки мышки пришлось даже напистаь свои расширения.
Все с ним хорошо кроме одного: расширения поддерживаются только для Windows и MacOS, а красноглазиков, как всегда, обделили :\
Пользователи ОС семейства Unix.
ну да, я догадывался… А почему красноглазики?
Слишком много сидят за монитором в темноте? :))))
я не совсем понял по поводу бесплатности. по-моему, все так и было в прошлой версии.
сам инструмент качается бесплатно, а за плаигны для компиляции в вин, макос и линукс приходится платить. объясните, пожалуйста
AIR чем не устраивает? из FlashBuilder4 можно выгонять нативный инсталлятор под нужную платформу. Когда-то пытался сделать презентацию для CD при помощи Zinc, незабываемый опыт.
Приложения AIR получаются убогие. Никакой кастомизации. Не понимаю, что мешает Adobe сделать нормальный кастомизируемый инсталлятор.
Плюс, выше писали, что для запуска AIR-приложения нужен установленный рантайм, и многим юзерам этого уже достаточно, чтбызабить на инсталлируемую программу.
А у цинка сразу нативный исполняемый модуль. В придачу, можно завернуть его в InnoSetup (для винды) и подобные для других ОС.
Ну хотя бы картинку добавить или, например, лицензионное соглашение, или опции инсталляции.
Понимаю, что это можно сделать через сетевую инсталляцию (скачивается инсталлер небольшой, а он уже сливает потом то, что выбрано), но если нужен солид инсталл, то с AIR никак.
да блин AIR райнтайм точно также можно обернуть, как это делает Zinc. У него это в коробке, а с AIR надо повозится ( 1й раз ). Вот единственное преимущество цинка.
Расскажите, пожалуйста, как вы обернете AIR рантайм, чтобы ваше AIR-приложение имело нативный инсталлятор для win/mac/linux и выглядело как один исполняемый файл, содержащий все внутри (варианты а-ля «напишуй свой аналог zinc» опустим)?
А вы слышали про новую фичу в AIR3 — Captive Runtime Support? Там ответ на ваш вопрос, я как то это упустил, тогда вообще не вижу смысла в цинке.
1. В air до сих пор нет возможности программной смены разрешения экрана.
2. Сам sdk и упаковка только для win и mac. Цинк поддерживает linux.
3. В упакованном приложениее вместе с exe лежит в открытом виде swf-файл и еще куча файлов с метаданными. Цинк на выходе дает единственный исполняемый файл.
3. Игра в разработке уже давно, а air3 зарелизили буквально месяц назад
1. Да наверно этого нет.
2. У вас целевая ( читай денежная ) аудитория на Linux ага. А цинк умеет выгонять под Android и iOS ( тут потенциал другой чувствуете)?
3. Ну т.е. это реальная проблема выковырять из цинка swf — не смешите. Кому надо вытащать хоть из AIR хоть из цинка.
3. Это ваши дела. Хотите пилите — цинк, хотите — используйте то что предлагается официально.
Мое мнение — ориентироваться на цинк неперспективно, потому что:
1) большинство актуальных фич уже реализовано в AIR3
2) учитывая что адоберы сосредовачиваются на AIR, стоит ждать приятных плюшек в ближайшем будущем ( очень жду мауслук )
Какая-то потенциальная часть аудитории на линуксе есть, и, если существует возможность покрыть ее, почему бы не сделать этого? Экспорт на мобильные девайсы нам не нужен, игра расчитана на десктоп. Речь идет не об ориентации на что-то и выпуске целой линейки продуктов в течение многих лет, а о публикации одного приложения на данный момент. Если к моменту выхода следующего приложения, air будет содержать в качестве подмножества все фичи цинка, используем, конечно, его.
Суть, в общем-то, в том, что обобщать («в цинке нету смысла») не стоит. Для кого-то подходит он, для кого-то air.
Абсолютно согласен, каждому — свое, мне очень важен охват мобильных платформ, а линукс без разницы.
Если вы делаете десктоп, вас не устраивает скорость работы FlashPlayer11 в браузере? Рендер можно перенести на Stage3D будет совсем хорошо )))
А вы пробовали пилить Цинк c его-то криптованием??? Не спорю, всё возможно, но ведь у каждого хитрости свои. Буржуйское коммерческое ПО дело для детсада, а вот наше, созданное воспаленным умом пост-советского коммунизма произведение, методом проб и экспериментов, не поддавшийся здоровой логики — НЕРЕАЛЬНО!
Бинарники из флеша это как десктоп-приложения на php, только хуже.
А что, проще swf-запускать в InternetExplorer?
Вы не поверите, но иметь 1 файл и любой браузер куда легче, чем 3 толстых бинарника.
Кстати, всем известная программа для изучения иностранных языков Rosetta Stone сделана, как раз с использованием Zinc.
Sign up to leave a comment.

Articles