|
|
|||||
Регистрация: Oct 2009
Сообщений: 386
|
facebook api начало работы
Обьясните пожалуйста всё ли можно писать в flash или надо обязательно JS приплетатью смотрю примеры в сети но никак разобраться не могу. мне надо просто фотографию пользователя вытенуть. поиллюстрируйте плиз если не сложно!
|
|
|||||
Надо JS приплетать. Вообще, можно и на флеше, но это сделать сложнее, чем изучить JS на необходимом уровне
Вот простейший html код вставки для iframe. Главное не забудьте положить в одну папку с этим html файл expressInstall.swf и папку js содержащую файл swfobject.js ну и можете в m_preloaderPath указать ссылку на свою флешку. В общем, думаю особого труда не составит разобраться что к чему. Данные из фейсбука передадутся при загрузке приложения, и будут доступны через stage.loaderInfo.parameters. В частности ссылка на фотку будет тут: stage.loaderInfo.parameters['picture']; удачи! <html> <head> <script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script> <script src="js/swfobject.js"></script> <link rel="stylesheet" href="style.css" /> <title></title> <meta name="description" content="" /> <script> var m_pref = "http://"; if (window.location.protocol == "https:") { m_pref = "https://"; } var m_preloaderPath = m_pref + "somepreloader.swf"; var m_movieName = m_pref + "someflash.swf"; var m_swfID = "FlashSWF"; var m_swf = null; var fbAppID = ""; // facebook api id var m_token = ""; var m_server = m_pref + "example.com/"; var fbChannelURL = m_server + "fb/channel.html"; var m_friendsList = "[ "; var m_httpVars = window.location.search.substring(1).split("&"); var m_urlvars = {}; // for vk and ok for (var i in m_httpVars) { var s = String(m_httpVars[i]).split("="); var key = String(s[0]); var value = String(s[1]); m_urlvars[key] = value; } // this means the social is vk or odnoklassniki if (m_urlvars['viewer_id'] || m_urlvars['logged_user_id']) { initIframe(m_urlvars); } else { $(document).ready(function () { $.ajaxSetup({ cache: true }); $.getScript('//connect.facebook.net/en_UK/all.js', function () { FB.init({ appId: fbAppID, channelUrl: fbChannelURL }); FB.getLoginStatus(function (response) { if (response.status === 'connected') { m_token = response.authResponse.accessToken; connected = true; var user = null; FB.api('/me?fields=picture,first_name,last_name', function (userParams) { user = userParams; FB.api('/me/friends?access_token=' + m_token + '&fields=installed,first_name,last_name,picture', function (friends) { for (var i in friends.data) { var firstName = friends.data[i].first_name; var lastName = friends.data[i].last_name; var picture = friends.data[i].picture.data.url; var userID = friends.data[i].id; m_friendsList += JSON.stringify({ 'firstName': firstName, 'lastName': lastName, 'picture': picture, 'userID': userID }) + ","; } m_friendsList += " ]"; //document.body.innerHTML = m_friendsList; if (user != null) { initIframe({ "fb_user_id": user.id, "first_name": user.first_name, "last_name": user.last_name, "token": token, "picture": user.picture.data.url, "friends": m_friendsList }); } }); }); } }) }); }); } // end else function initIframe(m_vars) { var rand = String(Math.floor(Math.random() * 100000)); var m_flashvars = {}; var str = ""; for (var i in m_vars) { var key = i; var value = m_vars[i]; m_flashvars[key] = value; str += key + "=" + value + "&"; } m_flashvars['server'] = m_server; m_flashvars['main'] = m_movieName + "?rand=" + rand; var params = { menu: "false", scale: "noScale", allowFullscreen: "true", allowFullscreenInteractive: "true", allowScriptAccess: "always", bgcolor: "", wmode: "direct" }; var attributes = { id: m_swfID }; swfobject.embedSWF( m_preloaderPath + "?rand=" + rand, "altContent", "100%", "100%", "10.0.0", "expressInstall.swf", m_flashvars, params, attributes); m_swf = document.getElementById(m_swfID); } </script> <style> html, body { height:100%; overflow:hidden; } body { margin:0; } </style> </head> <body> <div id="altContent"> </div> </body> </html> |
|
|||||
Регистрация: Oct 2009
Сообщений: 386
|
поясните плиз
var m_preloaderPath = m_pref + "somepreloader.swf";//Прелоадер? а если его нет? var m_movieName = m_pref + "someflash.swf";//ИМя основной флешки var m_swfID = "FlashSWF"; //Что такое? var m_swf = null; //Что такое? var fbAppID = ""; // facebook api id var m_token = "";//Что такое? var m_server = m_pref + "example.com/";//Что такое? var fbChannelURL = m_server + "fb/channel.html";//Что такое? |
|
|||||||
Цитата:
Если нет прелодера, то указываем туда путь к своей флешке, при этом можно не указывать m_movieName. У меня этот параметр используется для передачи через флешварс прелодеру, чтобы он знал откуда грузить основную флешку. А в страницу встраивается именно та флешка, которая указана в m_preloaderPath. Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
|
|
|||||
Регистрация: Oct 2009
Сообщений: 386
|
Спасибо, вроде понятно, сейчас попробую
|
Часовой пояс GMT +4, время: 12:30. |
|
« Предыдущая тема | Следующая тема » |
Опции темы | |
Опции просмотра | |
|
|