无法在android中导入Session,Request,Response,GraphUser包

无法在android中导入Session,Request,Response,GraphUser包,第1张

概述我在我的ecllipe中导入了最新的facebook sdk.当我试图在我的应用程序中获取基本信息时,它不会导入相应的Request,Response和Session包.我会做什么?导入相应的包. 我尝试下面的代码,但在导入相应的包时面临问题. LoginActivity.java @Override protected void onCreate(Bundle savedInstance 我在我的ecllipe中导入了最新的facebook sdk.当我试图在我的应用程序中获取基本信息时,它不会导入相应的Request,Response和Session包.我会做什么?导入相应的包.
我尝试下面的代码,但在导入相应的包时面临问题.

LoginActivity.java

@OverrIDe    protected voID onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentVIEw(R.layout.activity_main);        if (Session.getActiveSession() == null                || Session.getActiveSession().isClosed()) {            Session.openActiveSession(this,true,new StatusCallback() {                @OverrIDe                public voID call(Session session,SessionState state,Exception exception) {                    System.out.println("State= " + state);                    if (session.isOpened()) {                        System.out.println("Token=" + session.getAccesstoken());                        Request.executeMeRequestAsync(session,new GraphUserCallback() {                                    @OverrIDe                                    public voID onCompleted(GraphUser user,Response response) {                                        if (user != null) {                                            System.out.println("User=" + user);                                        }                                        if (response != null) {                                            System.out.println("Response="                                                    + response);                                            Toast.makeText(MainActivity.this,response.toString(),Toast.LENGTH_LONG).show();                                        }                                    }                                });                    }                    if (exception != null) {                        System.out.println("Some thing bad happened!");                        exception.printstacktrace();                    }                }            });        }        }        @OverrIDe        public voID onActivityResult(int requestCode,int resultCode,Intent data) {        super.onActivityResult(requestCode,resultCode,data);        Session.getActiveSession().onActivityResult(this,requestCode,data);        }
解决方法 它发生在您身上,因为会话已从新的AndroID SDK 4中删除.因此您无法使用此代码获取用户信息.

尝试使用此代码.这对我来说是成功的.

首先在onCreate中初始化FacebookSdk,然后再选择布局.

FacebookSdk.sdkInitialize(this.getApplicationContext());
loginbutton = (Loginbutton) findVIEwByID(R.ID.login_button);List < String > permissionNeeds = Arrays.asList("user_photos","email","user_birthday","public_profile","Accesstoken");loginbutton.registerCallback(callbackManager,new FacebookCallback < LoginResult > () {@OverrIDe	public voID onSuccess(LoginResult loginResult) {		System.out.println("onSuccess");		String accesstoken = loginResult.getAccesstoken()			.getToken();		Log.i("accesstoken",accesstoken);		GraphRequest request = GraphRequest.newMeRequest(		loginResult.getAccesstoken(),new GraphRequest.GraphJsONObjectCallback() {@OverrIDe			public voID onCompleted(JsONObject object,GraphResponse response) {				Log.i("LoginActivity",response.toString());				try {					ID = object.getString("ID");					try {						URL profile_pic = new URL(							"http://graph.facebook.com/" + ID + "/picture?type=large");						Log.i("profile_pic",profile_pic + "");					} catch (MalformedURLException e) {						e.printstacktrace();					}					String name = object.getString("name");					String email = object.getString("email");					String gender = object.getString("gender");					String birthday = object.getString("birthday");				} catch (JsONException e) {					e.printstacktrace();				}			}		});		Bundle parameters = new Bundle();		parameters.putString("fIElds","ID,name,email,gender,birthday");		request.setParameters(parameters);		request.executeAsync();	}	@OverrIDe	public voID onCancel() {		System.out.println("onCancel");	}	@OverrIDe	public voID onError(FacebookException exception) {		System.out.println("onError");		Log.v("LoginActivity",exception.getCause().toString());	}});

添加方法.

@OverrIDeprotected voID onActivityResult(int requestCode,int responseCode,Intent data) {	super.onActivityResult(requestCode,responseCode,data);	callbackManager.onActivityResult(requestCode,data);}
总结

以上是内存溢出为你收集整理的无法在android中导入Session,Request,Response,GraphUser包全部内容,希望文章能够帮你解决无法在android中导入Session,Request,Response,GraphUser包所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1127885.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-30
下一篇2022-05-30

发表评论

登录后才能评论

评论列表(0条)

    保存