一樣必須要有Permissions.PUBLISH_STREAM權限,才能發布訊息喔!
取得全權限只要
fb.postBitmapData(BitmapData物件);就可以把影像上傳到相簿了,很方便吧XD
上傳完成後會發出事件 ResPostFeedEvent.RESULT
你可以輸出事件的 result.id 就是圖片的ID
反正如果失敗,則會傳回ResPostFeedEvent.ERROR事件
另外還有一點要注意的,就是不管是訊息發佈還是上傳圖片,還是都必須要經過使用者利用按鈕觸發才能正常傳送,不然還是會產生問題...
以下參考程式
package
{
import Cain.facebook2.event.FaceBook_Login;
import Cain.facebook2.event.ResPostFeedEvent;
import Cain.facebook2.WebFaceBook;
import Cain.facebook2.data.Permissions;
public class FB_UpBitmap extends Sprite
{
private var fb:WebFaceBook;
public function FB_UpBitmap()
{
fb = new WebFaceBook("app id");
//登入完成事件
fb.addEventListener(FaceBook_Login.LOGIN, onLOGIN);
//上傳完成事件
fb.addEventListener(ResPostFeedEvent.RESULT, onRESULT);
登入按鈕.addEventListener(MouseEvent.CLICK, onInit);
}
private function onInit(e:MouseEvent):void
{
//登入
fb.login(Permissions.ABOUT_ME+","+Permissions.PUBLISH_STREAM);
}
//登入完成
private function onLOGIN(e:MouseEvent):void
{
上傳按鈕.addEventListener(MouseEvent.CLICK, onUpBitmapData);
}
private function onUpBitmapData(e:MouseEvent):void
{
//上傳BitmapData物件
fb.postBitmapData(BitmapData物件);
}
private function onRESULT(e:ResPostFeedEvent):void
{
trace("圖片ID:"+e.result.id);
}
}
}
沒有留言:
張貼留言