2013-08-30 68 views
0

我正在使用椋鳥(3D圖形)在Flash應用程序中的Facebook應用程序。所以我的HTML頁面需要在wmode =「direct」中。Facebook的hideFlashCallback不叫

我實現了在Facebook上https://developers.facebook.com/blog/post/637/

給出的解決方案,我把日誌步入回調,這日誌不會出現,所有的Facebook對話是我的Flash應用程序下顯示。所以我不認爲回調被稱爲。

這裏是我的回調測試代碼。我想念什麼?謝謝

編輯在我的應用程序後端被調用,然後重定向到前端。我發現,當我的背後的域名不同時,我的前端的回調不是啓動,而是當它是同一個域名時被調用。做某人知道爲什麼?

function test(info) 
{ 
console.debug("teste"); 
} 

function fbInit() 
{ 

    window.fbAsyncInit = function() 
    { 
    FB.init({ 
    appId: '${facebook_api_code}', 
    status: true, 
    cookie: true, 
    xfbml: true, 
    oauth: true, 
    frictionlessRequests: true, 
    hideFlashCallback : test 
    }); 

    FB.Canvas.setSize(); 
    window.isFacebookAPIInitialized = true; 

    if ((flashObject = getFlashMovie('${application}')) != undefined && flashObject.handleJavascriptFacebookAPIInitialized != undefined) 
    flashObject.handleJavascriptFacebookAPIInitialized(); 
}; 

// Load the SDK asynchronously 
(function(d, s, id){ 
    var js, fjs = d.getElementsByTagName(s)[0]; 
    if (d.getElementById(id)) {return;} 
    js = d.createElement(s); js.id = id; 
    js.src = "//connect.facebook.net/en_US/all"+".js"; 
    fjs.parentNode.insertBefore(js, fjs); 
    }(document, 'script', 'facebook-jssdk')); 
}; 

回答

0

我面臨着同樣的問題,在我的情況下FB.init從Javascript和從Flash內的其他時間調用兩次,一次,從而使得該flashHideCallback丟失。