i trying implement facebook sdk in app. have 3 activities. main activity(for facebook login) works uilifecyclehelper.
private uilifecyclehelper uihelper; private session.statuscallback statuscallback = new session.statuscallback() { @override public void call(session session, sessionstate state, exception exception) { onsessionstatechange(session, state, exception); } }; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); uihelper = new uilifecyclehelper(this, statuscallback); uihelper.oncreate(savedinstancestate); } @override protected void onresume() { super.onresume(); // scenarios main activity launched , user // session not null, session state change notification // may not triggered. trigger if it's open/closed. session session = session.getactivesession(); if (session != null && (session.isopened() || session.isclosed())) { onsessionstatechange(session, session.getstate(), null); } uihelper.onresume(); } @override protected void onpause() { super.onpause(); uihelper.onpause(); } @override protected void onactivityresult(int requestcode, int resultcode, intent data) { super.onactivityresult(requestcode, resultcode, data); uihelper.onactivityresult(requestcode, resultcode, data); } @override protected void ondestroy() { super.ondestroy(); uihelper.ondestroy(); } @override protected void onsaveinstancestate(bundle outstate) { super.onsaveinstancestate(outstate); session session = session.getactivesession(); session.savesession(session, outstate); uihelper.onsaveinstancestate(outstate); } private void onsessionstatechange(session session, sessionstate state, exception exception) { if (state.isopened()) { log.i(consts.tag, "logged in..."); setcookies(); } else if (state.isclosed()) { log.i(consts.tag, "logged out..."); } }
but have other 2 activities steponeactivity , steptwoactivity needs integrate facebook sdk. have use same uilifecyclehelper instance in these activities. please tell me how implement uilifecyclehelper in steponeactivity , steptwoactivity launched startactivity(new intent(this,steponeactivity.class));
mainactivity. have post text steponeactivity , invite friends steptwoactivity.
you can create facebookactivity thats parent class of of activities require facebook implementation
from parent activity call lifecycle methods , on of 3 activitys extend facebookactivity
that way have write lifecycle methods once, , if ever need activity fb implementation, make extend facebookactivity
here's beautiful graph created in paint