2012-04-04 67 views
0

我有一個Facebook應用程序,用戶在其中選擇4個朋友,然後創建一個帶有朋友圖片的視頻(swf)(通過xml加載)。所以我需要在用戶時間線上分享這個視頻。一切正常,但視頻並未嵌入到他的時間軸上的帖子中,只有一個帖子與其中的頁面鏈接。通過應用程序發佈帶參數到Facebook的swf

奇怪的是,如果我直接在我的時間線上發佈網址,則嵌入視頻,但如果通過應用程序發佈相同的鏈接,則不會。

這裏是我的代碼通過共享按鈕在JS調用:

function postToFeed() { 
    var obj = { 
     method: 'feed', 
     link: 'https://mysite.com/flash/share-page.php?id=22', 
     picture: 'https://mysite.com/images/video-preview.jpg', 
     name: 'Name', 
     caption: 'Caption', 
     description: 'Description' 
    }; 

    function callback(response) { 
     //some code here 
    } 

    FB.ui(obj, callback); 
    } 

,在我的股票page.php文件的代碼

<?php 

$id_inscription = $_GET['id']; 

$video_url = 'https://mysite.com/flash/share-page.php?id=22'; 
$video_preview_image = 'https://mysite.com/images/video-preview.jpg'; 

?> 

<!DOCTYPE html> 
<html> 
<head> 
    <title>Title</title> 
<meta http-equiv="content-type" content="text/html; charset=utf-8"> 
<meta http-equiv="content-language" content="en"> 
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /> 

<meta property="og:video" content="<?php echo $video_url; ?>"/> 

<!-- Open grah tags for Facebook --> 
<meta property="og:title" content="Test video player" /> 
<meta property="og:description" content="A video player interface experiment." /> 
<meta property="og:type" content="video" /> 
<meta property="og:url" content="<?php echo $video_url; ?>"/> 
<meta property="og:image" content="<?php echo $video_preview_image; ?>"/> 
<meta property="og:site_name" content="Site name"/> 

<!-- Video specific open graph tags --> 
<meta property="og:video" content="<?php echo $video_url; ?>" /> 
<meta property="og:video:secure_url" content="<?php echo $video_url; ?>" /> <!-- Required for people on Facebook who have secure browsing enabled! --> 
<meta property="og:video:width" content="325" /> 
<meta property="og:video:height" content="180" /> 
<meta property="og:video:type" content="application/x-shockwave-flash" /> 


<script src="js/swfobject.js"></script> 
<script> 
    var flashvars = { 
     xmlUrl:"xml/data-<?php echo $id_inscription; ?>.xml", 
     policyFileUrl:"http://profile.ak.fbcdn.net/crossdomain.xml" 
    }; 
    var params = { 
     menu: "false", 
     scale: "noScale", 
     allowFullscreen: "true", 
     allowScriptAccess: "always", 
     bgcolor: "", 
     wmode: "opaque" 
     //wmode: "direct" // can cause issues with FP settings & webcam 
    }; 
    var attributes = { 
     id:"content" 
    }; 
    swfobject.embedSWF(
     "app.swf", 
     "altContent", "480", "270", "10.0.0", 
     "expressInstall.swf", 
     flashvars, params, attributes); 
</script> 
</head> 

<body> 
<div id="altContent"> 
    <p><a href="http://www.adobe.com/go/getflashplayer">Get Adobe Flash player</a></p> 
</div> 
</body> 

</html> 

回答

0

發現,在JavaScript中你必須添加

source: 'https://mysite.com/flash/app.swf' 
相關問題