2014年4月1日 星期二

Android 開發 (三十七) facebook login

在使用facebook sdk的時候,第一個步驟就是必須先登入
相關的前置設定可以參考Android 開發 (九) Facebook GraphApi Explorer

在相關設定設定完成之後,只需要使用UiLifecycleHelper
在這邊要特別注意,必須在每個state都使用 helper的method
範例如下


    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        lifecycleHelper = new UiLifecycleHelper(this, new Session.StatusCallback() {
            @Override
            public void call(Session session, SessionState state, Exception exception) {
                onSessionStateChanged(session, state, exception);
            }
        });
        lifecycleHelper.onCreate(savedInstanceState);

    }
    
    @Override
    protected void onResume() {
     // TODO Auto-generated method stub
     super.onResume();
      lifecycleHelper.onResume();
     
    }
    @Override
    protected void onStop() {
     // TODO Auto-generated method stub
     super.onStop();
      lifecycleHelper.onStop();
    }
    
    @Override
    protected void onDestroy() {
     // TODO Auto-generated method stub
     super.onDestroy();
      lifecycleHelper.onDestroy();
      
    }
    
    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
     // TODO Auto-generated method stub
     super.onActivityResult(requestCode, resultCode, data);
      lifecycleHelper.onActivityResult(requestCode, resultCode, data);
    }

如果沒在每個state使用該使用的method將可能造成fb登入功能不正常,一直無法正常登入。
最近發現了fb登入不正常的問題,花了好久才找到這個原因......



沒有留言:

張貼留言