Flash API предоставляет удобный способ работы с API из Flash-приложений. После инициализации, оно предоставляет доступ ко всем функциям JS API, поэтому Flash API и JS API равноценны по возможностям.
Существуют 2 основных способа использования Flash-библиотеки для получения доступа к API Mail.ru:
iFrame-приложение — также как и Flash-приложение, будет использоваться только внутри Платформы Мой Мир. Основным отличием от Flash-приложения является то, что в настройках приложения нужно будет указать путь до HTML-страницы, на которой вы самостоятельно подключаете flash-объект(swf-файл).
Обращаем ваше внимание, что минимальная ширина iframe составляет 950px. Приложение должно корректно работать при этой ширине.
Для использования Flash API в iFrame-приложении вам нужно:
<script type="text/javascript" src="https://connect.mail.ru/js/loader.js"></script>
import mailru.MailruCall import mailru.MailruCallEvent
MailruCall.addEventListener(Event.COMPLETE, mailruReadyHandler); MailruCall.init(id_тэга_object, приватный_ключ_из_настроек_приложения); //mailruReadyHandler — ваша функция-обработчик готовности апи, например: private function mailruReadyHandler( event : Event ) : void { trace('Mail.ru API ready'); }
Пример кода вставки и инициализации приложения
<object width="730" height="200" type="application/x-shockwave-flash" data="demo.swf" name="flash-game" id="flash-game"> <param name="movie" value="demo.swf"> <param name="AllowScriptAccess" value="always"> <param name="allowNetworking" value="all"> <param name="allowFullScreen" value="true"> </object>
MailruCall.addEventListener(Event.COMPLETE, mailruReadyHandler); MailruCall.init('flash-game', privateKey); private function mailruReadyHandler( event : Event ) : void { trace('Mail.ru API ready'); }
Внешний сайт — это сайт, находящщийся на стороннем по отношению к Платформе домене. К примеру, если ваш сайт сделан на Flash, Вы можете использовать доступ к API для упрощения процесса регистрации пользователя, запросив информацию о нем через API (имя, фамилия, аватар).
Для использования Flash API на внешнем сайте Вам нужно:
<script type="text/javascript" src="https://connect.mail.ru/js/loader.js"></script>
import mailru.MailruCall import mailru.MailruCallEvent
MailruCall.addEventListener(Event.COMPLETE, mailruReadyHandler); MailruCall.init(id_тэга_object, приватный_ключ_из_настроек_приложения, id_сайта, "connect"); //mailruReadyHandler — ваша функция-обработчик готовности апи, например: private function mailruReadyHandler( event : Event ) : void { trace('Mail.ru API ready'); }
После инициализации можно работать со всеми методами JS API, например, получить альбомы пользователя:
//получаем id пользователя и его первый альбом userID = MailruCall.exec('mailru.session.vid'); MailruCall.exec('mailru.common.photos.getAlbums', getAlbumsCallback, userID); //getAlbumsCallback — функция-обработчик, которая будет вызвана после получения списка альбомов private function getAlbumsCallback(albums : Object) : void { if (albums[0]) { curAlbumId = albums[0].aid; } trace('ID первого альбома: ' + curAlbumId); }
Мы подготовили приложения для демонстрации работы с JS API из Flash./p>