문제

이 작은 문제에서 나를 도울 수 있다고 생각합니다.

저는 Facebook 개발자의 초보자이며 Actionscript 3을 개발자 플랫폼으로 선택합니다. SWC 라이브러리를 사용합니다 공식 Facebook-ActionScript-API Adobe가 홍보했습니다.

그래서 나는 그들의 튜토리얼을 따랐습니다. 그래서 나는 지시를 따랐다 :

  1. Flex 프로젝트를 만듭니다.
  2. 다운로드 및 넣습니다 Facebook_library_v3.4_flex.swc 에게 \lib 플렉스 프로젝트에서.
  3. 다음 코드 제공 :

            import com.facebook.Facebook;
            import com.facebook.utils.FacebookSessionUtil;
    
            private var fbook:Facebook;
            private var session: FacebookSessionUtil;
    
            protected var api_key : String = "my-facebook-app-api-key";
            protected var secret_key : String = "my-facebook-app-secret-key";
    
            public function init() : void {
                //fbook = new Facebook();
                session=new FacebookSessionUtil(api_key,secret_key,this.loaderInfo);
                var fbook : Facebook = session.facebook;
                session.validateLogin();
            }
    

    디버그 세션을 실행하려는 후. 이 명령문을 실행 한 후 오류가 발생했습니다.

    세션 = 새로운 FacebookSessionUtil (Api_key, Secret_key, this.loaderInfo);

나는 내가 뭔가 잘못했다고 생각하지만 그것을 알아낼 수 없었다. 조언이나 가이드 라인을 제공함으로써 저를 도와 주시겠습니까?

이것은 내가 얻은 예외입니다.

TypeError: Error #1009: Cannot access a property or method of a null object reference.
at com.facebook.utils::FacebookSessionUtil()[C:\Users\MikeHunt\Work\FacebookAPI\src\com\facebook\utils\FacebookSessionUtil.as:128]
at CheeseZaa/init()[/Users/teerasej/Documents/Flex Builder 3?/freelance/CheeseZaa/src/CheeseZaa.mxml:24]
at CheeseZaa/___CheeseZaa_Application1_creationComplete()[/Users/teerasej/Documents/Flex Builder 3?/freelance/CheeseZaa/src/CheeseZaa.mxml:4]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at mx.core::UIComponent/dispatchEvent()[C:\autobuild\3.5.0\frameworks\projects\framework\src\mx\core\UIComponent.as:9440]
at mx.core::UIComponent/set initialized()[C:\autobuild\3.5.0\frameworks\projects\framework\src\mx\core\UIComponent.as:1168]
at mx.managers::LayoutManager/doPhasedInstantiation()[C:\autobuild\3.5.0\frameworks\projects\framework\src\mx\managers\LayoutManager.as:718]
at Function/http://adobe.com/AS3/2006/builtin::apply()
at mx.core::UIComponent/callLaterDispatcher2()[C:\autobuild\3.5.0\frameworks\projects\framework\src\mx\core\UIComponent.as:8744]
at mx.core::UIComponent/callLaterDispatcher()[C:\autobuild\3.5.0\frameworks\projects\framework\src\mx\core\UIComponent.as:8684]

예외의 첫 번째 줄은 이것을 보여줍니다.

com.facebook.utils::FacebookSessionUtil()[C:\Users\MikeHunt\Work\FacebookAPI\src\com\facebook\utils\FacebookSessionUtil.as:128]

그러나 나는 그것이 예외에 관여하는지 확신하지 못한다.

내 개발 플랫폼은 다음과 같습니다.

  • MacBook Pro
  • OSX Snow Leopard 10.6
  • 플래시 플레이어 10.0.32 디버거
  • 모질라 파이어 폭스 3.6
  • 플렉스 빌더 3.2
  • Flex SDK 3.5
  • Facebook_library_v3.4_flex.swc

모든 제안과 가이드 라인은 감사합니다. 나는 이것이 나와 같은 문제를 발견 할 수있는 다른 개발자에게 좋을 것이라고 생각합니다.

도움이 되었습니까?

해결책

LoaderInfo는 준비되지 않았으며 현재는 무효입니다.

노력하다:-

public function init():void
{
    addEventListener(Event.ADDED_TO_STAGE, onAddedToStage, false, 0, true);
}

private function onAddedToStage(event:Event):void
{
    removeEventListener(Event.ADDED_TO_STAGE, onAddedToStage);

    session = new FacebookSessionUtil(api_key, secret_key, this.loaderInfo);
    var fbook:Facebook = session.facebook;

    session.validateLogin();
}
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top