i new adroid app development , started learning week. since 3 days struggling switching activity after successful facebook login.
my questions :
1) need redirect activity once user logged in. 2) need have profile details profile picture, email , name etc on next activity frame (which come after login).
current state : after login, fragment stays , logout button displayed.
my code fragment here :
public class loginfragment extends fragment { private callbackmanager mcallbackmanager; public accesstokentracker maccesstokentracker; public profiletracker mprofiletracker; private facebookcallback<loginresult> mcallback = new facebookcallback<loginresult>() { @override public void onsuccess(loginresult loginresult) { accesstoken accesstoken = loginresult.getaccesstoken(); profile profile = profile.getcurrentprofile(); log.d("get me profile", "name"); //log.d("welcome :", profile.getname()); } @override public void oncancel() { } @override public void onerror(facebookexception e) { } }; public loginfragment(){ } @override public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); facebooksdk.sdkinitialize(getactivity().getapplicationcontext()); mcallbackmanager = callbackmanager.factory.create(); accesstokentracker maccesstokentracker = new accesstokentracker() { @override protected void oncurrentaccesstokenchanged(accesstoken oldtracker, accesstoken newtracker) { } }; maccesstokentracker.starttracking(); profiletracker mprofiletracker = new profiletracker() { @override protected void oncurrentprofilechanged(profile oldprofile, profile newprofile) { //log.d("new name", "data"); } }; mprofiletracker.starttracking(); } @nullable @override public view oncreateview(layoutinflater inflater, viewgroup container, bundle savedinstancestate) { return inflater.inflate(r.layout.login_main, container, false); } @override public void onviewcreated(view view, bundle savedinstancestate) { super.onviewcreated(view, savedinstancestate); loginbutton loginbutton = (loginbutton) view.findviewbyid(r.id.login_button); loginbutton.setreadpermissions("public_profile"); loginbutton.setfragment(this); loginbutton.registercallback(mcallbackmanager, mcallback); } @override public void onresume() { super.onresume(); profile profile = profile.getcurrentprofile(); } @override public void ondestroy() { super.ondestroy(); maccesstokentracker.stoptracking(); mprofiletracker.stoptracking(); } @override public void onactivityresult(int requestcode, int resultcode, intent data) { super.onactivityresult(requestcode, resultcode, data); mcallbackmanager.onactivityresult(requestcode, resultcode, data); }
}
request kind words guys make work.
for answering first question 1) in facebookcallback:onsuccess
method can method opens next activity needed, , in oncreate
of fragment, check if accesstoken null, if null nothing wait user press login, if not null, call same method open activity needed user logged in
2) have check documents , permissions profile picture , name current logged user, , if have questions, please write code use first user data
Comments
Post a Comment