Flash-JS-VK-API-BRIDGE -Intermédiaire pour les applications Flash intégrées dans IFRAME. L'utilisation de cet intermédiaire permet de contacter les méthodes d'API Social. Vkontakte réseaux d'AS3.
Un exemple d'une application utilisant cet intermédiaire ==> https://vk.com/app6213458
Les avantages du travail à travers cet intermédiaire:
Description courte: Le principe de l'intermédiaire est construit sur l'appel du flash JS et la fonction vice versa. Ceci est réalisé en raison des méthodes de la classe EXTERNALInterface. À son tour, JS interagit avec JavaScript SDK , qui est fourni par le réseau social. Dans le HTML, la page Object-Flash est intégrée par SWFObject.
Connectez les cours nécessaires à votre projet:
//as code
import ExternalFlash.APIConnection ;
import ExternalFlash.events.CustomEvent ;Si vous avez également besoin de créer des boutons, avec le style du réseau social, n'oubliez pas de connecter cette classe:
//as code
import ExternalFlash.ui.VKButton Créez une copie de la classe ApiConnction , vérifiez si l'intermédiaire est prêt à travailler. Si l'intermédiaire n'est pas encore prêt, abonnez-vous à l'événement customevent.on_ei_init_end . Commencez à travailler avec un intermédiaire uniquement après qu'il soit prêt à travailler. Sinon, cela peut ne pas fonctionner correctement.
Un exemple de création d'une instance, avec un contrôle d'initialisation:
//as code
//Создаем экземпляр класса APIConnection
_VK = new APIConnection() ;
//Перед тем, как делать запросы, добавлять слушатели и т.д. Необходимо обязательно убедится, что посредник уже инициализировался.
//Иначе, посредник будет работать некорректно. Информация о инициализации может быть трех типов:
if ( _VK . eiConnectStatus == "WORKING" ){
//Посредник инциализировался, все работает. Только теперь можем работать с API
//Тут можно вызывать функцию, которая начнет работать с методами API
} else if ( _VK . eiConnectStatus == "NOT_WORK" ){
//Посредник не работает по какой либо причине.Это окончательный статус, он не изменится. Причина непоказывается, но если вы захотите сделать ее вывод, Вы можете посмотреть в классе ExtIntClass список причин, и выводить их оттуда
} else if ( _VK . eiConnectStatus == "CONNECTION" ){
//Посредник еще не загрузился. В этом случае надо поставить слушатель на экз. класса и слушать событие CustomEvent.ON_EI_INIT_END
//Событие приходит вместе с параметром connectState. Может быть WORKING - значить посредник инициализировался. NOT_WORK - посредник не будет работать.
_VK.addEventListener(CustomEvent.ON_EI_INIT_END, function (event:CustomEvent){
if (event . params . connectState == "WORKING" ){
//Посредник инциализировался, все работает. Только теперь можем работать с API
//Тут можно вызывать функцию, которая начнет работать с методами API
} else {
//Посредник не работает
}
_VK . removeEventListener (CustomEvent . ON_EI_INIT_END , arguments . callee ) ;
})
}L'état de la connexion _vk.eiconnectatus peut être de trois types:
Les paramètres de l'événement customevent.on_ei_init_end:
Cet événement ne peut se produire qu'une seule fois - dans l'initialisation. Par conséquent, vous n'avez pas besoin de l'écouter, sauf dans ce cas.
Les données obtenues lors du lancement de l'application sont transmises à Flash via FlashVars . Vous pouvez également les obtenir, comme lorsque vous utilisez Flash SDK.
//as code
var _flashVars : Object = stage . loaderInfo . parameters as Object ;Ces paramètres seront disponibles immédiatement après le lancement de l'application. Pour les utiliser, il n'est pas nécessaire d'attendre l'initiale de l'intermédiaire.
Tous les noms des méthodes utilisées dans le social fourni. Le réseau SDK Flash est le même que celui utilisé dans cet intermédiaire. Ainsi, lors du déménagement avec SDK Flash, travailler avec un spécimen de cet intermédiaire se produira de la même manière.
Ce qui doit être pris en compte lors de la transition:
//js code
} , '5.68' ) ; //string 9Cela résoudra probablement le problème du fonctionnement non correct de l'application, et il ne sera pas nécessaire de modifier les noms / arguments des méthodes API.
Il y a beaucoup de commentaires dans le code - c'est dans le cas où quelqu'un voudrait comprendre comment fonctionne ce médiateur, comment l'initialisation se produit et plus encore.
En tout cas, pour comprendre comment cela fonctionne de l'intérieur, vous ne pouvez pas télécharger de sources et les utiliser dans votre projet, sans étudier l'appareil de l'intermédiaire.