1

graphapi_web_1_8_1.swc에는 FB.init() JavaScript 버전과 거의 동일한 인수를 사용하는 Facebook.init() 함수가 있습니다. 그러나 내가 설정하고자하는 것은 인수를 통해 Facebook.init()FB.init()에 전달 된 Facebook의 hideFlashCallback 매개 변수입니다.graphapi_web_1_8_1.swc에서 Facebook의 hideFlashCallback을 설정하는 방법

http://developers.facebook.com/docs/reference/javascript/FB.init/

그러나, 나는 이미 graphapi_web_1_8_1.swc의 Facebook.init() 액션 스크립트에서 호출하고있어 만약 내가 자바 스크립트 함수로 전달할 수있는 방법 : 다음과 같이 자바 스크립트 SDK 유형 "Object"의 값을 취 hideFlashCallback? 액션 스크립트 변수 "Object" 또는 "*"로 입력 된 경우에도,

는 I는 그 반환 값을 대상으로 콜백 함수 선수 "GetHideFlashCallback()" JS 함수를 호출 ExternalInterface.call()을 사용했지만,이를 다시 액션에 널 온다.

내 다음 테스트에서는 graphapi_web_1_8_1.swc의 Facebook.init()을 호출하지 않고 단지 ExternalInterface.call("FB_init_proxy(args)")과 같은 작업을 수행하여 Facebook의 JavaScript SDK를 직접 사용합니다.

그러나 ActionScript를 사용하여 JavaScript 함수를 Object 변수로 전달할 수 있습니까? 그렇지 않다면, 왜? 보안 문제입니까?

+0

이 기능을 작동 시키셨습니까? 나는 나 자신과 비슷한 시나리오로 어려움을 겪고있다. –

답변

0

현재 문제의 원인 볼 수 있습니다 : 초기화 페이스 북의 자바 스크립트에서 아주 https://developers.facebook.com/blog/post/637/

당신이 hideFlashCallback 추가해야합니다 :

FB.init({ 
    appId:appId, 
    status:true, 
    cookie:true, 
    oauth:true, 
    frictionlessRequests: true, 
    hideFlashCallback : displayFlash 
}); 

이 displayFlash 기능에 당신은 당신이 원하는 것을 할 수 있습니다

function displayFlash(a) 
{ 
    if(a.state == 'opened') 
    { 
     // do what you want when a chat or notification is open 
    } 
    else 
    { 
     // do what you want when a chat or notification is closed 
    } 
} 
관련 문제