我使用Facebook SDK 4.0通过Facebook为我的应用程序实现了登录.
当用户点击Facebook登录按钮时,他导航到主页活动并加载新视图.问题是,有一段时间,在Facebook进程对话框消失之后并且在显示主视图之前,facebook登录按钮在“注销”中更改了他的文本,这是用户可见的.我怎么能避免这个?
当用户点击Facebook登录按钮时,他导航到主页活动并加载新视图.问题是,有一段时间,在Facebook进程对话框消失之后并且在显示主视图之前,facebook登录按钮在“注销”中更改了他的文本,这是用户可见的.我怎么能避免这个?
@Override public View onCreateView(LayoutInflater inflater,ViewGroup container,Bundle savedInstanceState) { View view = inflater.inflate(R.layout.frg_login,container,false); callbackManager = CallbackManager.Factory.create(); fbLoginButton = (LoginButton) view.findViewById(R.id.fb_login_button); fbLoginButton.setReadPermissions("user_friends"); fbLoginButton.setReadPermissions("public_profile"); fbLoginButton.setFragment(this); fbLoginButton.registerCallback(callbackManager,new FacebookCallback<LoginResult>() { @Override public void onSuccess(LoginResult loginResult) { GraphRequest request = GraphRequest.newMeRequest( loginResult.getAccesstoken(),new GraphRequest.GraphJSONObjectCallback() { @Override public void onCompleted( JSONObject object,GraphResponse response) { // Application code Log.v("LoginActivity",response.toString()); session = new SessionManager(getActivity()); try{ String name = object.getString("name"); session.createLoginSession(name,true); //Toast.makeText(getActivity(),"Login successful",Toast.LENGTH_SHORT).show(); } catch (JSONException exe) { } } }); Bundle parameters = new Bundle(); parameters.putString("fields","id,name"); request.setParameters(parameters); request.executeAsync(); } @Override public void onCancel() { Toast.makeText(getActivity(),"Login canceled",Toast.LENGTH_SHORT).show(); } @Override public void onError(FacebookException exception) { Toast.makeText(getActivity(),"Login error",Toast.LENGTH_SHORT).show(); } }); return view; }
在调用片段的活动中:
if (currentAccesstoken != null) { navigatetoHomeActivity(); } public void navigatetoHomeActivity(){ Intent homeIntent = new Intent(getActivity(),MainActivity.class); homeIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); startActivity(homeIntent); }
谢谢大家
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。